【发布时间】:2013-03-20 14:17:24
【问题描述】:
顶部的挫败感!!!
我从服务中获得了一些 JSON 响应,我想将其存储在 .plist 文件 中以供将来参考。
我无法将我的 JSON 响应保存到 .plist 文件。我认为这是由于响应中有一些 null 值。
注意: 我确认响应是 JSON 格式 使用 jsonparser。
我的代码:
NSError *error;
NSDictionary* json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSDictionary *dictResult = [(NSDictionary*)json objectForKey:@"myKey"];
NSLog(@"Result Dictionary :: %@",dictResult);
NSURL *cacheDir = [[[NSFileManager defaultManager] URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask] lastObject];
NSURL *path = [cacheDir URLByAppendingPathComponent:@"FinalResult.plist"];
NSLog(@"Path :: %@",path);
BOOL success = [dictResult writeToURL:path atomically:YES];
NSLog(@"success? %d", success);
注意: 我得到了所有 NSLog 值(表示响应字典和文件路径但 0 表示成功)。
问题:响应中几乎有 70-80 个键值对,我不想全部删除/替换 null 值。因为我想要的是……
- 从服务器获取响应。
- 用响应填充所有 UITextFields。
- 使用 UITextFields 中的一些编辑值向服务器发布相同的响应。
所以,我只想更改 Object 中 Edited UITextField 的值,然后让它 POST 到服务器。
解决此问题的最佳方法是什么?
【问题讨论】:
-
JSON 字典包含哪些类型的数据?字符串,数字,还有什么?您可以将 JSON 添加到您的问题中吗?
-
@TomHarrington:我的 JSON 字典包含您在答案中提到的几乎所有类型的值。
标签: iphone ios objective-c json plist