我正在尝试以JSON格式记录文本文件中的排泄物。整个文件就像一个JSON对象(customeModle类的数组)。
第一次工作正常但是下次当我登录文件时我必须阅读它然后将新对象添加到数组然后删除之前再保存它显然它不是一个好方法记录错误。
问题
请建议一种在现有文件中附加新对象而不覆盖它的方法。
非常感谢您提供的帮助。
答案 0 :(得分:0)
每Apple Documentation,您可以在追加模式下打开文件(输出流)。
如果您持有对文件输出流outStream
的引用,则可以使用以下方法附加数据:
[NSJsonSerialization writeJSONObject:myNewObject toStream:outStream options:1 error:&error]
但是,我个人会使用您已经在做的选项 - 读取可变对象中的数据,修改然后再使用NSJSONSerialization
将其转换回数据。最后,将该数据保存到磁盘 - 替换原始数据。因为这可以保持JSON结构的完整性。