Я пытаюсь:
-принимать содержимое файла (называемого list.txt), изменять его и отправлять в временный файл (listtemp.txt).
-Очиститьlist.txt, распечатайте новое содержимое listtemp.txt в list.txt, затем очистите listtemp.txt для дальнейшего изменения list.txt
Проблема заключается в том, что у меня есть соответствующее содержимое в listtemp.txtЯ не могу взять новое содержимое и поместить его в list.txt.Я успешно очистил список, но затем не могу добавить или записать в список с помощью PrintWriter.
Я попытался очистить list.txt с помощью FileWriter, установив для параметра значение false, чтобы очистить его, затемзакрытие FileWriter и использование моего исходного PrintWriter, который я использую для печати / добавления непосредственно в мой list.txt.
Я попытался полностью удалить list.txt, затем воссоздать его, а затем использовать оригинальный PrintWriter для печати/ добавить снова, напрямую распечатать / добавить текстовый файл.
Итак, как уже было сказано, я изменяю list.txt и успешно помещаю его в listtemp.txt.Затем я попытался создать метод swapListing (), чтобы очистить list.txt и добавить содержимое listtemp.txt.
private void swapListing() {
FileWriter fw = null; //This is the temporary FileWriter to clear the text file
try {
fw = new FileWriter(main.file, false); //Main list is cleared.
fw.close();
fw = null;
} catch (IOException e) {
e.printStackTrace();
}
try {
String temp = main.getReader().readFile(main.filetemp); //I got the contents of the String from my listtemp.txt, and I checked, and the String is successfully retrieved, so this isn't the problem.
pwriter.print(temp); // This is where I feel like file SHOULD be appended
} catch(Exception e) {
e.printStackTrace();
}
}
Я также пытался удалить файл, но файл фактически не удаляется,и исходный контент также фактически все еще находится в файле.
private void clearFile() {
if (main.file.exists()) {
main.file.delete();
try {
main.file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
try {
String temp = main.getReader().readFile(main.filetemp);
pwriter.print(temp);
} catch(Exception e) {
e.printStackTrace();
}
}
Я бы предпочел не использовать метод удаления файла, но на данный момент я бы просто хотел рабочее решение, которое я мог бы по крайней мере использовать.