用另一个字符串替换文件中的字符串

时间:2011-02-22 00:45:10

标签: java file replace

使用Java对现有文件中的字符串进行搜索和替换的最快方法是什么?

假设我有这个:

// This references an existing file 
File file = ...

有问题的文件如下所示:

The Green Dog is furry.
It likes to run in the Green Grass.
Green is its favorite color.

如何将“绿色”字符串替换为“蓝色”并将该文件重新保存为新颜色?

更新的 我已经考虑过这个了,也许最好和最快的方法是将文件的内容读入一个字符串(使用类似FileUtils之类的东西),然后只是替换并重写文件?

1 个答案:

答案 0 :(得分:4)

看看Retrieving and Replacing number in text file几乎是一样的。

编辑:关于你的更新,我只会使用BufferedReader和BufferedWriter并将其留给JVM来优化读/写,即我会以流式方式进行替换。你建议的内存读取解决方案可能会快一些 - 但我不会读取内存中的所有内容(使方法不可扩展),除非有一个很好的理由。