zoukankan      html  css  js  c++  java
  • 将字典或者数组转换成JSON数据或者字符串

    将字典或者数组转换成JSON数据或者字符串

    源码:

    NSDictionary+JSON.h 与 NSDictionary+JSON.m

    //
    //  NSDictionary+JSON.h
    //  Category
    //
    //  Created by YouXianMing on 15-2-09.
    //  Copyright (c) 2014年 YouXianMing. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    
    @interface NSDictionary (JSON)
    
    /**
     *  转换成JSON串字符串(没有可读性)
     *
     *  @return JSON字符串
     */
    - (NSString *)toJSONString;
    
    /**
     *  转换成JSON串字符串(有可读性)
     *
     *  @return JSON字符串
     */
    - (NSString *)toReadableJSONString;
    
    /**
     *  转换成JSON数据
     *
     *  @return JSON数据
     */
    - (NSData *)toJSONData;
    
    @end
    //
    //  NSDictionary+JSON.m
    //  Category
    //
    //  Created by YouXianMing on 15-2-09.
    //  Copyright (c) 2014年 YouXianMing. All rights reserved.
    //
    
    #import "NSDictionary+JSON.h"
    
    @implementation NSDictionary (JSON)
    
    - (NSString *)toJSONString {
        NSData *data = [NSJSONSerialization dataWithJSONObject:self
                                                       options:NSJSONReadingMutableLeaves | NSJSONReadingAllowFragments
                                                         error:nil];
        
        if (data == nil) {
            return nil;
        }
        
        NSString *string = [[NSString alloc] initWithData:data
                                                 encoding:NSUTF8StringEncoding];
        return string;
    }
    
    - (NSString *)toReadableJSONString {
        NSData *data = [NSJSONSerialization dataWithJSONObject:self
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
        
        if (data == nil) {
            return nil;
        }
        
        NSString *string = [[NSString alloc] initWithData:data
                                                 encoding:NSUTF8StringEncoding];
        return string;
    }
    
    - (NSData *)toJSONData {
        NSData *data = [NSJSONSerialization dataWithJSONObject:self
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
        
        return data;
    }
    
    @end

    NSArray+JSON.h 与 NSArray+JSON.m

    //
    //  NSArray+JSON.h
    //  Category
    //
    //  Created by YouXianMing on 15-2-09.
    //  Copyright (c) 2014年 YouXianMing. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    
    @interface NSArray (JSON)
    
    /**
     *  转换成JSON串字符串(没有可读性)
     *
     *  @return JSON字符串
     */
    - (NSString *)toJSONString;
    
    /**
     *  转换成JSON串字符串(有可读性)
     *
     *  @return JSON字符串
     */
    - (NSString *)toReadableJSONString;
    
    /**
     *  转换成JSON数据
     *
     *  @return JSON数据
     */
    - (NSData *)toJSONData;
    
    @end
    //
    //  NSArray+JSON.m
    //  Category
    //
    //  Created by YouXianMing on 15-2-09.
    //  Copyright (c) 2014年 YouXianMing. All rights reserved.
    //
    
    #import "NSArray+JSON.h"
    
    @implementation NSArray (JSON)
    
    - (NSString *)toJSONString {
        NSData *data = [NSJSONSerialization dataWithJSONObject:self
                                                       options:NSJSONReadingMutableLeaves | NSJSONReadingAllowFragments
                                                         error:nil];
        
        if (data == nil) {
            return nil;
        }
        
        NSString *string = [[NSString alloc] initWithData:data
                                                 encoding:NSUTF8StringEncoding];
        return string;
    }
    
    - (NSString *)toReadableJSONString {
        NSData *data = [NSJSONSerialization dataWithJSONObject:self
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
        
        if (data == nil) {
            return nil;
        }
        
        NSString *string = [[NSString alloc] initWithData:data
                                                 encoding:NSUTF8StringEncoding];
        return string;
    }
    
    - (NSData *)toJSONData {
        NSData *data = [NSJSONSerialization dataWithJSONObject:self
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
        
        return data;
    }
    
    @end

    使用:

  • 相关阅读:
    在powerdesigner中,一个table,怎么在diagram中创建多个symbol
    查看SQLserver编码格式的SQL语句
    永久解决火狐浏览器出现的flash版本更新问题
    列出所有表的情况
    sql查询当天,一周,一个月数据的语句
    vs2010边调试边编辑后台.cs文件的办法
    sql查询上一条记录和下一条记录
    jquery 中substring,substr,split的用法
    jQuery HTML 操作
    Win10怎么设置始终以管理员身份运行应用程序
  • 原文地址:https://www.cnblogs.com/YouXianMing/p/4282320.html
Copyright © 2011-2022 走看看