保存文档目录或临时文件夹中的内容有何区别?

时间:2013-05-21 09:39:56

标签: iphone objective-c xcode

我想在我的应用程序中保存多张照片,以便应用程序在后台运行。 那么在doc dir或temp path中保存照片之间的主要区别是什么。

并建议我哪种方式可以保存照片

  1. Document Dir
  2. 临时文件夹
  3. NSUserDefaults
  4. 提前致谢

2 个答案:

答案 0 :(得分:2)

主要区别在于路径:<sandbox>/Documents<sandbox>/tmp

更多差异:

  1. 如果您的应用启用了文件共享,则可以通过iTunes访问Documents目录。

  2. tmp目录的内容是易变的,操作系统可以自由清除它以节省空间。

  3. 关于NSUserDefaults:这是完全不同的东西,它是一种将特定于应用程序的配置数据存储在属性列表中的机制,我无法想象如何和/或为什么要使用它来存储图像。

答案 1 :(得分:1)

以下是参考:File System Programming Guide

临时文件夹:

  

使用此目录编写不需要的临时文件   在您的应用发布之间保持不变。您的应用应删除文件   当它确定不再需要它们时从这个目录。 (该   系统也可能会在您的目录中清除此目录中的延迟文件   应用程序未运行。)

文件夹:

  

使用此目录存储关键用户文档和应用数据   文件。关键数据是您的应用无法重新创建的任何数据,   例如用户生成的内容。

通常,我只在缓存某些文件时将文件放在临时文件夹中,我不在乎这些文件是否会被删除。如果我想确定这些文件应该长寿,我会将它们放到文档文件夹中。