Реализуем в контроллере метод для сохранения файла под новым именем saveDocumentAs().
Реализация должна:
22.1. Переключать представление на html вкладку.
22.2. Создавать новый объект для выбора файла JFileChooser.
22.3. Устанавливать ему в качестве фильтра объект HTMLFileFilter.
22.4. Показывать диалоговое окно "Save File" для выбора файла.
22.5. Если пользователь подтвердит выбор файла:
22.5.1. Сохранять выбранный файл в поле currentFile.
22.5.2. Устанавливать имя файла в качестве заголовка окна представления.
22.5.3. Создавать FileWriter на базе currentFile.
22.5.4. Переписывать данные из документа document в объект FileWriter-а аналогично тому, как мы это делали в методе getPlainText().
22.6. Метод не должен кидать исключения.
Проверь работу пункта меню Сохранить как...
Требования:
Метод saveDocumentAs() в контроллере должен переключать представление на html вкладку.
Метод saveDocumentAs() в контроллере должен создавать новый объект для выбора файла JFileChooser.
Метод saveDocumentAs() в контроллере должен устанавливать объекту класса JFileChooser в качестве фильтра объект HTMLFileFilter.
Метод saveDocumentAs() в контроллере должен, используя метод showSaveDialog() у JFileChooser показывать диалоговое окно "Save File" для выбора файла.
Метод saveDocumentAs() в контроллере должен сохранять выбранный файл в поле currentFile, если пользователь подтвердит выбор файла.
Метод saveDocumentAs() в контроллере должен устанавливать имя файла в качестве заголовка окна представления, если пользователь подтвердит выбор файла.
Метод saveDocumentAs() в контроллере должен создавать FileWriter на базе currentFile, если пользователь подтвердит выбор файла.
Метод saveDocumentAs() в контроллере должен используя HTMLEditorKit переписывать данные из документа document в объект FileWriter-а, если пользователь подтвердит выбор файла.
Метод saveDocumentAs() в контроллере не должен кидать исключения, а логировать через ExceptionHandler.
package com.javarush.task.task32.task3209;
import java.io.File;
public class Tester {
public static void main(String[] args) {
System.out.println(accept(new File("D:\\javafile\\getting-started.html")));
}
public static boolean accept(File file) {
//if (!file.isDirectory()) return false;
String name = file.getName();
return name.endsWith(".html") || name.endsWith(".htm") || name.endsWith(".HTM") || name.endsWith(".HTML") ;
}
}
+1
Комментарии (1)
популярные
новые
старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Не проходило из-за того, что после сохранения выводилось название сохраненного файла...
JOptionPane.showMessageDialog(view,
"Файл '" + jFileChooser.getSelectedFile() +
" сохранен");