Как использовать FileDialog? - PullRequest
       1

Как использовать FileDialog?

20 голосов
/ 27 августа 2011

Я создал интерфейс и хотел бы добавить функцию, которая позволяет пользователю открывать файл.Я использую AWT.Я не понимаю, как использовать FileDialog.Можете ли вы дать мне пример или хорошую ссылку, которая объясняет это?

Ответы [ 3 ]

32 голосов
/ 12 марта 2013

Пример полного кода с фильтрацией файлов:

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);
9 голосов
/ 21 марта 2015

Чтобы добавить к ответу @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 голосов
/ 27 августа 2011

Есть несколько примеров кода здесь , которые демонстрируют, как использовать его для различных задач.

Тем не менее, вы можете сделать шаг назад и проверить, является ли awt лучшим заданием для этой работы. Существуют веские причины использовать его вместо чего-то вроде Swing / SWT, но если вы только начинаете, тогда Swing, IMO будет лучшим выбором (есть больше компонентов, больше учебных пособий и это более востребованная библиотека для работы эти дни.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...