繁体   English   中英

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

[英]In which folder do i have to save a data file in a IOS app?

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

所以我应该保存数据文件到哪个文件夹?

谢谢

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

  1. 文件-使用者产生的资料(不可复制)
  2. 缓存-缓存的内容(可复制)
  3. 临时-临时数据(无需在会话之间保持持久性)
  4. 没有iCloud备份属性的文档

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

NSString *documentsDirectory = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];

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

感谢TommydanhThe Tiger使答案更完整。

与用户或iCloud不共享的文件应保存在

<Application_Home>/Library/Caches/<APP_BUNDLE_ID>/

您还可以使用NSDefaults,它将数据存储在Preferences文件夹中的XML文件中。 要存储数据:

NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];
[settings setInteger:qrCode forKey:@"QRCode"];
[settings synchronize];

(假设QR码数据存储在名为qrCode的整数中)要再次读取QR码,请执行以下操作:

NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];
int qrCode = [settings integerForKey:@"QRCode"];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM