ОБНОВЛЕНИЕ
Вы указали мне, что проверка существующих файлов не работает.Извините, я не подумал об этом, когда предложил заменить строку BufferedWriter
.Теперь замените это:
File sFile = fSave.getSelectedFile();
на:
File sFile = new File(fSave.getSelectedFile()+".txt");
С этой заменой теперь нет необходимости заменять строку BufferedWriter
, добавляя .txt
длярасширение.Затем замените эту строку на строку в коде, который вы разместили (с BufferedWriter out = new BufferedWriter(new FileWriter(sFile));
вместо BufferedWriter out = new BufferedWriter(new FileWriter(sFile+".txt"));
).
Теперь программа должна работать как положено.
Я забыл упомянуть, чтоВы должны прокомментировать строку:
sFile.createNewFile();
Таким образом, вы создаете пустой файл с классом File
.
Сразу после этой строки есть: BufferedWriter out = new BufferedWriter(new FileWriter(sFile));
.С помощью этой строки вы снова создаете тот же файл.Процедура написания происходит два раза!Я думаю, что бесполезно вставлять две инструкции, выполняющие одну и ту же задачу.
Кроме того, в конструкторе BufferedWriter
можно добавить строку для имени файла (это невозможно в конструкторе File
).), вот почему я добавил +".txt"
(расширение) к sFile
.