【发布时间】:2016-01-30 20:04:50
【问题描述】:
我在将 JSON 对象的 NSString 转换为 NSArray 时遇到问题。
NSArray 对象似乎为空。
这是我的 NSString JSON 代码:
NSString* retrievedStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
这给了我一个打印输出:
{"image_link":"schedule_tien_nguyen.jpg","start_time":"18:00","end_time":"19:00","viet_performer":"","english_performer":"Tien Nguyen","viet_event":"","english_event":"Singing","day":0,"stage":0}
....
我尝试使用以下方法将 NSString 转换为 NSArray:
NSArray *jsonObject = [NSJSONSerialization JSONObjectWithData:
[retrievedStr dataUsingEncoding:NSUTF8StringEncoding]
options:0 error:&error];
但是 jsonObject 的打印输出是 (null)
我已经尝试过这里的解决方案: Converting an NSString of JSON Data to NSArray 和 How to convert a JSON String into an NSArray? 但它仍然打印出 null。
error 打印输出状态:
“最后的垃圾。”
我不确定这是什么意思?
【问题讨论】:
-
这个 JSON 包含字典而不是数组,所以尝试使用 NSDictionary
-
你检查
error了吗? -
Avi:我在描述中添加了它
-
检查原始响应。似乎在json之后添加了错误或其他字符。请检查这个
-
NSLog
error如果返回 null,它提供帮助您。if (jsonObject == 0) {NSLog(@"JSONObjectWithData error: %@", error);}并处理错误。
标签: objective-c nsstring nsarray nsjsonserialization