iOS NSArray转化为Json
定义一个 NSArray 的分类
NSArray (JSON).h文件
#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文件
#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
网友评论