JSON相关的,数据彼此间的转化进行了简单地封装,源码如下,支持arc与非arc
来源:互联网 发布:中班美工区域材料图片 编辑:程序博客网 时间:2024/05/19 14:55
YXJSON.h + YXJSON.m
//// YXJSON.h//// JSONString 与 JSONData 与 字典或者数组互相转化//// Copyright (c) 2014年 YouXian. All rights reserved.//#import <Foundation/Foundation.h>@interface YXJSON : NSObject/** 将字典或者数组转换为JSON格式字符串 @return JSON格式字符串 */+ (NSString *)JSONStringWithDictionaryOrArray:(id)dictionaryOrArray;/** 将字典或者数组转换为JSON的Data @return JSON的Data */+ (NSData *)JSONSDataWithDictionaryOrArray:(id)dictionaryOrArray;/** 将JSON格式字符串转换为字典或者数组 @return 字典或者数组 */+ (id)dictionaryOrArrayWithJSONSString:(NSString *)jsonString;/** 将JSON的Data转换为字典或者数组 @return 字典或者数组 */+ (id)dictionaryOrArrayWithJSONSData:(NSData *)jsonData;@end
//// YXJSON.m//// JSONString 与 JSONData 与 字典或者数组互相转化//// Copyright (c) 2014年 YouXian. All rights reserved.//#if __has_feature(objc_arc)#define YX_release(obj)#define YX_autorelease(obj)#else#define YX_release(obj) [obj release]#define YX_autorelease(obj) [obj autorelease]#endif#import "YXJSON.h"@implementation YXJSON+ (NSString *)JSONStringWithDictionaryOrArray:(id)dictionaryOrArray{ if (dictionaryOrArray == nil) { return nil; } //options: Pass 0 if you don't care about the readability of the generated string NSData *data = [NSJSONSerialization dataWithJSONObject:dictionaryOrArray options:NSJSONWritingPrettyPrinted error:nil]; if (data == nil) { return nil; } NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; YX_autorelease(string); return string;}+ (NSData *)JSONSDataWithDictionaryOrArray:(id)dictionaryOrArray{ if (dictionaryOrArray == nil) { return nil; } //options: Pass 0 if you don't care about the readability of the generated string NSData *data = [NSJSONSerialization dataWithJSONObject:dictionaryOrArray options:NSJSONWritingPrettyPrinted error:nil]; return data;}+ (id)dictionaryOrArrayWithJSONSString:(NSString *)jsonString{ if (jsonString == nil) { return nil; } NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding]; return [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves|| NSJSONReadingMutableContainers error:nil];}+ (id)dictionaryOrArrayWithJSONSData:(NSData *)jsonData{ if (jsonData == nil) { return nil; } return [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves|| NSJSONReadingMutableContainers error:nil];}@end
0 0
- JSON相关的,数据彼此间的转化进行了简单地封装,源码如下,支持arc与非arc
- 封装同时支持ARC与非ARC类 的 宏
- 原创-ARC与非ARC的区别
- ARC与非ARC的循环引用
- ios开发——日常之ARC与非ARC的转化
- arc非arc的转换
- ARC/非ARC的设置
- arc 与非arc
- ARC与非ARC
- 关于ARC与非ARC 工程互用的问题
- ios--ARC与非ARC之间的转换
- ios 类文件中 ARC与非ARC的设置
- ARC与非ARC下的Weak-Strong Dance
- IOS ARC与非ARC之间的转换
- ARC与非ARC文件的混合开发
- ARC 与非 ARC 之间那些的'祸害'
- ARC与非ARC文件的混合开发
- 关于arc与非arc的混合编程
- OpenCV从Mat中提取某些行或列
- iOS7应用开发入门经典(第5版)读书笔记
- Extjs MVC开发模式
- 订单评价参考
- 正整数加减乘除四则混合运算求值方法 java实现
- JSON相关的,数据彼此间的转化进行了简单地封装,源码如下,支持arc与非arc
- 黑马程序员——————深入理解C/C++函数指针
- android 程序中res/values-v14/styles.xml报错的解决办法
- 有趣的Autolayout示例-Masonry实现
- MD_STOCK_REQUIREMENTS_LIST_API这个FUNCTION的功能
- 常用信息/技术网站推荐
- JAVA基础二(java中的注释、ava编程语法基础、java数据类型、数据类型的转换、变量、运算符、分支语句、循环语句)
- SQLite C/C++ 接口介绍
- xml学习笔记