* Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘*
+[NSJSONSerialization dataWithJSONObject:options:error:]:
Invalid top-level type in JSON write
归档
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:_pictureArray];
NSArray *arr2 = [NSKeyedUnarchiver unarchiveObjectWithData:data];
保存到本地
NSString *path = [NSString stringWithFormat:@”%@/Documents/baikePicture.plist”,NSHomeDirectory()];
NSError* error = nil;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:data options:NSJSONWritingPrettyPrinted error:&error];
[[NSFileManager defaultManager] createFileAtPath:path contents:jsonData attributes:nil];
_pictureArray里面的元素对象是UIImage
解决办法
将UIImage转化成NSData就行了。
本文介绍了一个关于UIImage在尝试转换为JSON格式时遇到的问题及其解决方案。问题表现为当UIImage对象被包含在一个数组中并试图使用NSJSONSerialization进行序列化时,会抛出无效顶级类型错误。文章提供了一种简单的解决方法:先将UIImage转换为NSData格式。
1909

被折叠的 条评论
为什么被折叠?



