从 JSON 文件中添加和删除数据 [重复]

Posted

技术标签:

【中文标题】从 JSON 文件中添加和删除数据 [重复]【英文标题】:Add and remove data from JSON file [duplicate] 【发布时间】:2014-06-28 11:04:21 【问题描述】:

我在项目中添加了包含以下代码的文件 Objects.json:


"circle": [
       [1, 3], [2, 1], [3, 2],
],
"line": [
       [2, 1], [3, 2], [1, 3],
],
"A_Letter": [
       [3, 3], [2, 1], [1, 2],
    ],

如何向该文件添加新密钥?

例如,如果我想删除“line”键,该怎么做?

【问题讨论】:

您需要解析 JSON,修改结果,然后重新序列化。 【参考方案1】:

试试这可能会有所帮助,在此我解决 JSON 并根据需要删除密钥..

 NSString *str = @"\"circle\": [       [1, 3], [2, 1], [3, 2],],\"line\": [       [2, 1], [3, 2], [1, 3],],\"A_Letter\": [       [3, 3], [2, 1], [1, 2],    ]";
  NSMutableDictionary *datadic = [NSJSONSerialization JSONObjectWithData:[str dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableContainers error:nil];
  [datadic removeObjectForKey:@"line"];
 NSLog(@"data return %@",datadic);

谢谢

【讨论】:

谢谢!我要试试这个 在我的代码中运行良好。我已经对此进行了测试..谢谢并接受我的回答:) 也可以接受点击右箭头... -1 表示不检查错误。【参考方案2】:

因为这是字典的数组。因此,添加到字典使用 setObject: ForKey: 方法和删除使用 removeObjectForKey: 如下所示:-

 NSMutableDictionary *mutDict=[yourjsonDict mutableCopy];
 [mutDict setObject: @[@[1,2],@[2,3]] forKey:@"yourKey"];

  // now for removing 
  [mutDict removeObjectForKey:@"line"];

【讨论】:

以上是关于从 JSON 文件中添加和删除数据 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

从 JSON 文件中删除重复条目 - BeautifulSoup

怎么删除json数据里的元素

如何从多个重复的 json 文件中删除一个文本块,其中文件之间有微小的变化?

在 AngularJS 中的 JSON 中添加、删除和更新特定数据

从文件名字符串PHP中删除空格[重复]

删除某些 Unicode(垃圾)JSON 字符 [重复]