1

我管理的唯一方法是创建一个临时文件来执行此操作,但这不是我想要的。有人可以提供一个示例,说明如何在不制作临时文件的情况下用字符串替换文本文件的第 N 行。

提前感谢=)

4

1 回答 1

1

您可以使用 RandomAccessFile ...这可以同时读取和写入文件...因此您不需要创建临时文件...

想法是使用 readLine 跳过第 N-1 行。

然后计算第七行的字节并与您的 replaceString 字节进行比较...

如果replaceStringBytes < SevenLineBytes 然后替换整个第七行字节并在第七行之后继续读取并在文件中移动之前的字节......

如果 replaceStringBytes > SevenLineBytes 然后创建以字节为单位的差异缓冲区并在第七行之后存储额外的字节......每次前进时继续用差异填充缓冲区......

这是一个线程,它会给你一些提示......

Java - 通过在读取时覆盖从文本文件中删除行

于 2013-02-16T00:36:00.953 回答