我想要做的是将一个字符串写入文件中每一行的末尾。现在我有一个 NSFileHandle 写入文件,但只在文件末尾。我怎样才能把它设置到最后就行了?
问问题
602 次
2 回答
0
即使您寻找到一行的末尾,如果您在该点写入文件,您将覆盖下一行的开头。您不能通过寻找某个位置并写入来将文本插入文件。
您最好的选择是写出一个临时文件。打开原始文件进行阅读。读取每一行并将其写入新文件。然后将要添加的文本写到行尾。对每一行重复此操作。
将所有新行写入新文件后,删除旧文件并重命名新文件。
于 2013-01-31T04:26:31.187 回答
0
您将需要读取流并搜索文件中使用的任何行分隔符,通常是 0x0a (nl)、0x0d (cr) 或有时是 cr/lf。
如果文件小到可以读入内存,您可以将其读入 NSString,使用 componentsSeparatedByString: (带有分隔符),然后使用 componentsJoinedByString: (带有行尾添加和分隔符)来创建聚合结果。
于 2013-01-31T04:11:50.407 回答