我正在尝试在我的程序中保存并加载.txt
个文件。我有读取和写入文件的方法,但我希望用户能够使用打开/保存表单选择要保存文件的名称和位置。到目前为止我已经这样做了。
JButton btnLoad = new JButton("Carregar");
btnCarregar.addActionListener(new ActionListener() {
private Component modalToComponent;
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser();
if (fileChooser.showOpenDialog(modalToComponent) == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
}
}
});
是的,这实际上打开了表单,但在那之后,我不知道在何处以及如何使用我的方法来加载文本。我想,我应该使用file
,因为它是选定的文件,但是当我将此文件发送到我的方法时,它只是不起作用。任何一个例子将不胜感激。先谢谢!
答案 0 :(得分:0)
您可以从用户选择要打开的文件的位置调用方法(在actionPerformed
方法的if部分中)。因此,如果您的阅读方法被称为openFile
并接受File
参数,您可以将' openFile(file)`作为if块中的第二个语句:
if (fileChooser.showOpenDialog(modalToComponent) == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
openFile(file);
}
处理打开文件的openFile
方法的简单示例(在这种情况下仅打印内容)可能如下所示:
private void openFile(final File inputFile) {
try (final BufferedReader reader = new BufferedReader(new FileReader(inputFile))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println("line: " + line);
// todo: handle line.
}
} catch (final IOException e) {
e.printStackTrace();
// todo: handle exception.
}
}