在iPhone上存储json数据:按原样保存json字符串VS从json创建一个对象并使用NSCoding + NSKeyedArchiver

发布于 2024-10-16 04:35:42 字数 303 浏览 8 评论 0原文

在我的 iPhone 应用程序中,我从远程服务器获取 json 数据,使用 Json 框架解析它并将其呈现在 UIview 中。还希望能够为用户提供将数据存储在设备上的选项,以便也可以离线查看。我想知道直接存储 json 数据与创建对象然后使用 NSCoding + NSKeyedArchiver 保存它相比是更好还是更差的选择。我认为按原样存储 json 字符串的优点是,它在磁盘上占用的空间比存档对象少,而另一方面,通过存储存档对象,您不必每次都解析存储的数据,因此使用更少的内存。

有没有一个最佳的整体选择?在这方面有什么最佳实践吗? json 文件大小约为 8KB。

In my iPhone application I get json data from a remote server, parse it using the Json Framework and present it in a UIview. Also want to be able to give the user the option to store the data on the device so that it can also be viewed offline. I was wondering if storing the json data directly is a better or worse choice than making an object and then saving it using NSCoding + NSKeyedArchiver. I assume that the advantage of storing a json string as it is, is that it takes less space on disc than an archived object while, on the other hand, by storing archived objects you don't have to parse the stored data every time thus using less memory.

Is there a best overall choice? Are there any best practices on that matter? The json files size is approximately 8KB.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

傻比既视感 2024-10-23 04:35:42

我使用不同的方法。一旦 JSON 数据在我的应用程序中被解析,它就会存储在 NSDictionary 中。我将其保留为 .plist 文件。

[myDictionary writeToFile:[self saveFilePath] atomically:YES];

加载:

NSMutableDictionary *wholeDictionary = [NSDictionary dictionaryWithContentsOfFile:[self saveFilePath]];

就是这样!

I use a different approach. Once the JSON data is parsed in my app, its stored in a NSDictionary. I persist that as a .plist file.

[myDictionary writeToFile:[self saveFilePath] atomically:YES];

To Load:

NSMutableDictionary *wholeDictionary = [NSDictionary dictionaryWithContentsOfFile:[self saveFilePath]];

That's it!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文