Открытие файлов с помощью JFileChooser

В качестве небольшого побочного проекта я подумал, что было бы здорово сделать текстовый редактор. В настоящее время я застрял на открытии файлов. Это мой код для открытия файла (e — это ActionEvent, открыть — это JMenuItem):

else if (e.getSource() == open) {
        JFileChooser choice = new JFileChooser();
        int option = choice.showOpenDialog(this);
        if (option == JFileChooser.APPROVE_OPTION) {
            try{
                Scanner scan = new Scanner(new FileReader((open).getSelectedFile().getPath()));
            }
        }

    }

Блок try доставляет мне неприятности. Eclipse говорит, что getSelectedFile() не определено для типа JMenuItem. Он также кажется неопределенным для MenuItems. Есть ли другой способ приблизиться к этому или другой метод, который работает так же?


person mooles    schedule 27.11.2011    source источник
comment
Этот метод находится в JFileChooser: selection.getSelectedFile();   -  person 勿绮语    schedule 27.11.2011
comment
Должно быть choice.getSelectedFile();   -  person Krishan    schedule 27.11.2011
comment
Есть ли что-нибудь лучше, чем JFileChooser. Что делать, если вы хотите, чтобы он выглядел так, как будто он открыт в окне Microsoft Open.   -  person Doug Hauf    schedule 09.05.2014


Ответы (3)


Вам нужно вызвать getSelectedFile() для JFileChooser после его возврата, поэтому измените свой код на:

choice.getSelectedFile()
person Nate W.    schedule 27.11.2011

person    schedule
comment
Я рекомендую добавить некоторый описательный текст, чтобы объяснить соответствующие разделы вашего кода. - person MasterAM; 09.02.2014

person    schedule
comment
Добавление описания было бы полезно. - person Halvor Holsten Strand; 07.02.2015
comment
Мой плохой скопируйте код и запустите его. он открывает текстовый файл и сохраняет его. - person user4540837; 07.02.2015