iOS中的文件I / O?

时间:2011-04-20 16:58:38

标签: ios

从iOS中的文件写入/读取数据的推荐方法是什么?我只看到了:

  1. 批量I / O.例如,NSFileManager的contentsAtPath或NSString的writeToFile。对于复杂的数据结构而言,这些内存密集且不切实际。
  2. 来自NSFileHandle的非常低级别的基于缓冲区的I / O。
  3. 似乎缺少的是位于介于两者之间的API,可以读取int,float和字符串(如Java的readUTF / writeUTF)。 C的fscanf就是一个很好的例子。我可以自己动手。但是,我想知道基金会框架是否已经有了我错过的东西。

    感谢。

2 个答案:

答案 0 :(得分:0)

Bibhas,可以使用低级C API(包括fscanf)。对于粒度IO,许多应用程序使用RDBMS(SQLite)或NSUserDefaults。这可能会也可能不会满足您的需求。

iOS还支持内存映射文件。 http://shift.net.nz/2011/04/memory-mapped-files-on-ios-worth-checking-out/

答案 1 :(得分:0)

  

似乎缺少的是位于介于两者之间的API,可以读取int,float和字符串(如Java的readUTF / writeUTF)。 C的fscanf就是一个很好的例子。

使用C的文件I / O工具没有任何问题,如果它比基金会的更高级接口更适合您的需求。

(正如您的后续评论显示您已发现)