将NSFileHandle seekToFileOffset设置为行尾

时间:2013-01-31 03:12:23

标签: ios nsfilehandle

我希望能够做的是将一个字符串写入文件中每一行的末尾。现在我有一个NSFileHandle写入文件,但只在文件的末尾。如何将其设置到最后?

2 个答案:

答案 0 :(得分:0)

您需要读取流并搜索文件中使用的任何行分隔符,通常为0x0a(nl),0x0d(cr)或有时为cr / lf。

如果文件足够小以读入内存,您可以将其读入NSString,使用componentsSeparatedByString :(使用您的分隔符),然后使用componentsJoinedByString :(使用您的行尾添加和分隔符)来创建汇总结果。

答案 1 :(得分:0)

即使你寻找到一行的结尾,如果你在该点写入文件,你将覆盖下一行的开头。您无法通过寻找现场和写作来将文本插入文件中。

您最好的选择是写出临时文件。打开原始文件进行阅读。读取每一行并将其写入新文件。然后将要添加的文本写入行尾。对每一行重复此操作。

将所有新行写入新文件后,删除旧文件并重命名新文件。