我有一个要使用 Java 编辑的文本文件。它有数千行。我基本上想遍历这些行并更改/编辑/删除一些文本。这需要经常发生。
从我在其他网站上看到的解决方案来看,一般的做法似乎是:
- 使用 BufferedReader 打开现有文件
- 读取每一行,对每一行进行修改,并将其添加到 StringBuilder
- 读取和修改所有文本后,将 StringBuilder 的内容写入新文件
- 用新文件替换旧文件
这个解决方案对我来说似乎有点“hacky”,尤其是当我的文本文件中有数千行时。
有人知道更好的解决方案吗?
最佳答案
我最近没有在 Java 中这样做过,但是将整个文件写入内存似乎是个坏主意。
我能想到的最好的办法是同时以写入模式打开一个临时文件,并为每一行读取它,如有必要进行修改,然后写入临时文件。最后删除原文件,重命名临时文件。
如果您对文件系统具有修改权限,您可能还具有删除和重命名权限。
关于java - 在 Java 中修改 .txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/822150/