如何使用JFileChooser查找文件位置

时间:2013-09-12 21:30:29

标签: java swing jfilechooser

有没有一种方法可以用来简单地找到文件位置?我正在尝试允许用户选择一个文件并打开它,但我必须让JFileChooser只选择文件并将位置发送到另一个方法。最好的方法是什么?

3 个答案:

答案 0 :(得分:5)

the javadoc中的示例show show来执行此操作:

JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter(
    "JPG & GIF Images", "jpg", "gif");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
   System.out.println("You chose to open this file: " +
        chooser.getSelectedFile().getName());
}

这就是chooser.getSelectedFile()正在做的事情。获取结果并将其传递给另一个方法。

答案 1 :(得分:3)

chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

// You can use 
// chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);  too

File file = chooser.getSelectedFile();
String fullPath = file.getAbsolutePath();

然后将String传递给另一个方法。

答案 2 :(得分:0)

我们还可以使用TextArea获取此处的任何文件示例的图像文件路径和文件名 对象TextArea是txtPath,我们使用以下方法将ActionPerformed更改为名为bChoose的JButton。

JFileChooser fc = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("Image Files", "jpg", "png", "gif");
fc.setFileFilter(filter);
fc.showDialog(bChoose, "Choose File");
String strPath = txtPath.getText() + "\n" + fc.getSelectedFile().toString();
txtPath.setText(strPath);