使用NSJSONSerialization将数组或字典转为字符串

时间:2023-12-15 18:41:26

IOS中将数组或字典转为字符串可以用NSJSONSerialization,代码如下:

NSData* data = [NSJSONSerialization dataWithJSONObject:array options:NSJSONWritingPrettyPrinted error:nil];
NSString* jsonStr = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];

但是今天在第一步,也就是转为data时程序崩溃,由于是第一次用这个方法,所以实在不知道哪里出了问题。后来问同事,他提醒我字典或者数组中内容的格式必须按照json的格式。我恍然大悟,我在数组里存的是一些自定义的类,编译器肯定无法识别。于是我将自定义的类换成字典,这样就符合json的标准格式,问题也就解决了。