我有一个NSDictionary,我尝试使用以下代码转换为JSON
NSData *data = [NSJSONSerialization dataWithJSONObject:dictionary options:kNilOptions error:nil];
NSString *result = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
生成的data
对象看起来不错,但最终的NSString
仍为NULL。如果我使用NSString
创建NSASCIIStringEncoding
,我会得到一个正确的字符串对象,但任何多字节UTF8字符当然都会损坏。
每当功能成功时,是否dataWithJSONObject
总是会产生有效的UTF8数据?
详细信息:我很确定罪魁祸首是我输入数据中的某个地方(从自定义二进制格式解析的字符串),但是有很多数据,我不知道如何有效地检测到哪里问题是。