如何删除文本文件中的特定字符串?

如何删除文本文件中的特定字符串?

找到该文件。

File file = new File("/path/to/file.txt"); 

创建一个临时文件(否则你首先要将所有内容都读入Java的内存)。

 File temp = File.createTempFile("file", ".txt", file.getParentFile()); 

确定字符集。

 String charset = "UTF-8"; 

确定要删除的字符串。

 String delete = "foo"; 

打开文件进行阅读。

 BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), charset)); 

打开临时文件进行写入。

 PrintWriter writer = new PrintWriter(new OutputStreamWriter(new FileOutputStream(temp), charset)); 

逐行读取文件。

 for (String line; (line = reader.readLine()) != null;) { // ... } 

从行中删除字符串。

  line = line.replace(delete, ""); 

将其写入临时文件。

  writer.println(line); 

关闭读写器(最好是在finally块中)。

 reader.close(); writer.close(); 

删除文件。

 file.delete(); 

重命名临时文件。

 temp.renameTo(file); 

也可以看看:

  • Java教程 – 课程:基本I / O.

我非常喜欢@BalusC给出的答案。 除此之外,您还可以参考以下链接中的工作示例: – String Pattern Remover