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

    使用:

  • 相关阅读:
    窗口程序及其反汇编
    PE文件结构及其加载机制(一)
    PE文件结构及其加载机制(三)
    RadAsm配置与第一个程序的编译
    另一个类型的窗口汇编程序及反汇编程序
    发现blogcn真的是做得不错!
    虚拟机学习
    这个blog的定位
    以前做的界面
    用Windows Server 2003搭建安全文件服务器 (转)
  • 原文地址:https://www.cnblogs.com/YouXianMing/p/4282320.html
Copyright © 2011-2022 走看看