这是NSArray和NSDictionary的类别,它使此 *** 作变得非常容易。我为漂亮打印添加了一个选项(换行和标签使阅读更容易)。
@interface NSDictionary (BVJSONString)-(NSString*) bv_jsonStringWithPrettyPrint:(BOOL) prettyPrint;@end
。
@implementation NSDictionary (BVJSONString) -(NSString*) bv_jsonStringWithPrettyPrint:(BOOL) prettyPrint { NSError *error; NSData *jsonData = [NSJSonSerialization dataWithJSONObject:self options:(NSJSONWritingOptions) (prettyPrint ? NSJSonWritingPrettyPrinted : 0) error:&error]; if (! jsonData) { NSLog(@"%s: error: %@", __func__, error.localizedDescription); return @"{}"; } else { return [[NSString alloc] initWithdata:jsonData encoding:NSUTF8StringEncoding]; } }@end
。
@interface NSArray (BVJSONString)- (NSString *)bv_jsonStringWithPrettyPrint:(BOOL)prettyPrint;@end
。
@implementation NSArray (BVJSONString)-(NSString*) bv_jsonStringWithPrettyPrint:(BOOL) prettyPrint { NSError *error; NSData *jsonData = [NSJSonSerialization dataWithJSONObject:selfoptions:(NSJSONWritingOptions) (prettyPrint ? NSJSonWritingPrettyPrinted : 0) error:&error]; if (! jsonData) { NSLog(@"%s: error: %@", __func__, error.localizedDescription); return @"[]"; } else { return [[NSString alloc] initWithdata:jsonData encoding:NSUTF8StringEncoding]; }}@end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)