有了这段代码,我想读取一个文本文件,将所有元素放入arraylist并用arraylist contains替换该文件。但是这段代码不会写入文件,我也不知道为什么...
public void delete(String lineToDelete, String nameFile) throws IOException {
file = new File(nameFile);
fw = new FileWriter(file,false);
read = new Scanner(file);
while (read.hasNext()) {
itemFile.add(read.nextLine());
}
for (int i = 0; i < itemFile.size(); i++) {
if (itemFile.get(i).equals(lineToDelete)) {
itemFile.remove(i);
break;
}
}
for (String itemFile1 : itemFile) {
fw.write(itemFile1);
fw.write(System.lineSeparator()); //new line
}
}
最佳答案
您需要在打开FileWriter之前关闭扫描仪,以避免文件冲突。
...
read.close();
FileWriter fw = new FileWriter(file,false);
for (String itemFile1 : itemFile) {
fw.write(itemFile1);
fw.write(System.lineSeparator()); //new line
}
fw.close();