这个解决方案可能不是最佳或漂亮,但它的工作原理。它逐行读入输入文件,将每行写入临时输出文件。每当遇到一条与您所寻找的内容相匹配的行时,它会跳过写出一行。然后重命名输出文件。我省略了错误处理,读取器/写入器关闭等。我还假设在你正在寻找的行中没有前导或尾随空格。根据需要更改trim()的代码,以便找到匹配项。
File inputFile = new File("myFile.txt");
File tempFile = new File("myTempFile.txt");
BufferedReader reader = new BufferedReader(new FileReader(inputFile));
BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));
String lineToRemove = "bbb";
String currentLine;
while((currentLine = reader.readLine()) != null) {
// trim newline when comparing with lineToRemove
String trimmedLine = currentLine.trim();
if(trimmedLine.equals(lineToRemove)) continue;
writer.write(currentLine + System.getProperty("line.separator"));
}
writer.close();
reader.close();
boolean successful = tempFile.renameTo(inputFile);