JSON和OC之间对象的转换
2015-05-13 16:24
134 查看
//网络请求数据一般都返回JSON, //简单做了一个整理, //JSON和OC对象之间的转换. //使用方式,类名直接调用就可以. //////////////////////////////////////////////////////////////////////// //下面是.h文件 //////////////////////////////////////////////////////////////////////</span> @interface JYJSON : NSObject /* NSJSONReadingMutableContainers: 返回可变容器, NSMutableDictionary或NSMutableArray。 */ /* NSJSONReadingMutableLeaves: 返回的JSON对象中字符串的值为NSMutableString, 目前在iOS 7上测试不好用,应该是个bug */ /* NSJSONReadingAllowFragments: 允许JSON字符串最外层既不是NSArray也不是NSDictionary, 但必须是有效的JSON Fragment。 例如使用这个选项可以解析 @“123”这样的字符串。 */ /* *将字典或者数组转换为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; /* * 将Data转换为UTF-8格式的字符串 @return 字符串 */ +(NSString *)stringWithForamtUTF8FromData:(NSData *)data; /* * 将NSString转换为NSData @return NSData */ +(NSData *)dataWithJSONString:(NSString *)str; @end //////////////////////////////////////////////////////////////////////// //下面是.m文件 ////////////////////////////////////////////////////////////////////// #import "JYJSON.h" @implementation JYJSON + (NSString *)JSONStringWithDictionaryOrArray:(id)dictionaryOrArray { if (dictionaryOrArray ==nil){ return nil; } NSData *data = [NSJSONSerialization dataWithJSONObject:dictionaryOrArrayoptions:NSJSONWritingPrettyPrintederror:nil]; if (data ==nil) { return nil; } NSString *string = [[NSString alloc] initWithData:dataencoding:NSUTF8StringEncoding]; return string; } + (NSData *)JSONSDataWithDictionaryOrArray:(id)dictionaryOrArray { if (dictionaryOrArray ==nil) { return nil; } NSData *data = [NSJSONSerialization dataWithJSONObject:dictionaryOrArrayoptions:NSJSONWritingPrettyPrintederror:nil]; return data; } + (id)dictionaryOrArrayWithJSONSString:(NSString *)jsonString { if (jsonString ==nil) { return nil; } NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding]; return [NSJSONSerializationJSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves|NSJSONReadingMutableContainers error:nil]; } + (id)dictionaryOrArrayWithJSONSData:(NSData *)jsonData { if (jsonData ==nil) { return nil; } return [NSJSONSerializationJSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves|NSJSONReadingMutableContainers error:nil]; } +(NSString *)stringWithForamtUTF8FromData:(NSData *)data { if (data ==nil) { return nil; } NSString *str = [[NSString alloc] initWithData:dataencoding:NSUTF8StringEncoding]; return str; } +(NSData *)dataWithJSONString:(NSString *)str { if (str ==nil) { return nil; } NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding]; return data; } @end
相关文章推荐
- json对象和json字符串之间的转换-JavaScript实现
- Json-lib实现json,java对象,xml之间相互转换 .
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- OC基本数据类型与对象之间的转换方法
- FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
- json对象与其字符串之间的转换
- Java对象 json之间的转换(json-lib)
- java对象和json对象之间互相转换
- Jackson框架:Java对象与json、xml格式的数据之间的转换
- 解析JSON对象与字符串之间的相互转换
- node.js JS对象和JSON字符串之间的转换
- JSON 对象与字符串之间转换(兼容浏览器)
- JSON对象和字符串之间的相互转换
- json数据格式和object对象之间相互转换
- java对象与json对象之间互相转换实现方法示例
- 对象、json、数组之间的转换
- OC基础:OC 基本数据类型与对象之间的转换方法
- Json字符串和js对象之间的转换
- Java中json 字符串与对象之间的转换
- Java之json和对象之间的相互转换