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

    使用:

  • 相关阅读:
    安装HDP时的报错信息
    K-近邻(KNN)算法
    linux复杂命令
    azkaban报错记录
    azkaban的安装部署
    安装centOS后要解决的问题
    AI之微信跳一跳
    Python的lambda
    关于在vim中的查找和替换
    cdh6.3.2 hue集成hbase
  • 原文地址:https://www.cnblogs.com/YouXianMing/p/4282320.html
Copyright © 2011-2022 走看看