Я создал интерфейс, и я хотел бы добавить функцию, которая позволяет пользователю открывать файл. Я использую AWT. Я не понимаю, как использовать FileDialog. Не могли бы вы привести мне пример или хорошую ссылку, объясняющую это?
Как использовать FileDialog?
Ответ 1
Полный пример кода с фильтрацией файлов:
FileDialog fd = new FileDialog(yourJFrame, "Choose a file", FileDialog.LOAD);
fd.setDirectory("C:\\");
fd.setFile("*.xml");
fd.setVisible(true);
String filename = fd.getFile();
if (filename == null)
System.out.println("You cancelled the choice");
else
System.out.println("You chose " + filename);
Ответ 2
Чтобы добавить к ответу @TheBronx - для меня fd.setFile("*.txt");
не работает на OS X. Это работает:
fd.setFilenameFilter(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
return name.endsWith(".txt");
}
});
Или как фантазия Java 8 лямбда:
fd.setFilenameFilter((dir, name) -> name.endsWith(".txt"));
Ответ 3
Здесь несколько примеров кода здесь, которые демонстрируют, как использовать его для различных задач.
Тем не менее, вы можете сделать шаг назад и проверить, является ли это наилучшей задачей для работы здесь. Есть веские причины использовать его над чем-то вроде swing/swt, конечно, но если вы только начинаете, то Swing, ИМО будет лучшим выбором (там больше компонентов, больше учебников и более широко запрошенной библиотеки для работы с в эти дни.)