2014-03-13 50 views
1

我们正在将一个跨平台代码加载到Cocoa的应用程序。使用直接在磁盘上的文件进行加载/保存的底层文件处理例程是强制性的。NSFileWrapper和普通的旧文件句柄

由于NSFileWrapper旨在通过NSData在内存中显示文件的内容,并将实际的磁盘文件细节提取出来,所以我们不能直接使用它,对吗?

所以为了能够使用我们的低级别的文件处理代码中使用

  • fopen()
  • fread()

和类似ANSI-C的东西,我们都在思考

  1. 使用NSFileWrapper API NSDocument,
  2. NSData从文件包装器中写回到temp。文件夹
    (例如〜/ Library/Caches/
  3. 移交该温度。文件(〜100k .. 1MB)降到较低的水平。

文件的写作将同样的工作 - 只是周围的其他方法。

现在 - 这种方法是最简单的方式来获得直接访问文件NSFileWrapper代表?我们在文件包装中忽略了一些API吗?

有我们可能会遇到任何麻烦 - 尤其是沙盒和iCloud的思维..?

由于我们希望支持文件包超过1个文件,我们希望坚持使用基于文件包装的API NSDocument而不是使用基于NSURL的方法。

任何意见/评论者赞赏!

回答