0

我想要做的是将一个字符串写入文件中每一行的末尾。现在我有一个 NSFileHandle 写入文件,但只在文件末尾。我怎样才能把它设置到最后就行了?

4

2 回答 2

0

即使您寻找到一行的末尾,如果您在该点写入文件,您将覆盖下一行的开头。您不能通过寻找某个位置并写入来将文本插入文件。

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

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

于 2013-01-31T04:26:31.187 回答
0

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

如果文件小到可以读入内存,您可以将其读入 NSString,使用 componentsSeparatedByString: (带有分隔符),然后使用 componentsJoinedByString: (带有行尾添加和分隔符)来创建聚合结果。

于 2013-01-31T04:11:50.407 回答