在 IOS 应用程序中,我必须将数据文件保存在哪个文件夹中?

Ale*_*cez 3 iphone ios

我正在开发一个 QRCode 阅读器应用程序。扫描 qrcore 时,我想将其数据保存在文件中。我不想在 icloud 中备份它,我只想在应用程序关闭时文件数据不会丢失。

那么我应该在哪个文件夹中保存我的数据文件?

谢谢

Anu*_*das 5

根据iOS 数据存储指南,您可以选择将数据存储在

  1. 文档 - 用户生成的数据(不可复制)
  2. 缓存 - 缓存内容(可重现)
  3. Temp - 临时数据(不需要跨会话持久化)
  4. 没有 iCloud 备份属性的文档

选择存储位置的决定取决于应用程序的上下文。如果 QRCode 文件需要存在并且用户特定,请选择选项 4。如果设备磁盘空间不足,可以清除缓存目录中存储的数据。

NSString *documentsDirectory = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅答案 1答案 2

感谢TommydanhThe Tiger使答案更加完整。

  • 并参见 QA1719 — http://developer.apple.com/library/ios/#qa/qa1719/_index.html — 了解如何将文件标记为不用于备份。 (3认同)
  • 或者使用更正确的答案,即使用 NSCachesDirectory(明确用于难以重新创建且不与 iCloud 同步的应用程序生成的数据。 (2认同)