1

我正在使用JFileChooser允许用户选择.txt稍后将由我的程序处理的文件,但是当用户选择文件时,它实际上由我的计算机默认应用程序(在我的情况下为 TeXworks)打开并由我的程序。知道如何阻止这种情况吗?

File fileToOpen = fileChooser.getSelectedFile(); 
4

1 回答 1

2

JFileChoosergetSelectedFile()方法,返回一个File对象。使用getAbsolutePath()获取文件的绝对名称。

JavaDoc中的修改示例:

JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
int returnVal = chooser.showOpenDialog(parent);
if (returnVal == JFileChooser.APPROVE_OPTION)
{
System.out.println("You chose to open this directory: " + chooser.getSelectedFile().getAbsolutePath());
}

因此,在您的情况下,您只需要附加.getAbsolutePath()到语句的末尾,如下所示:

File fileToOpen = fileChooser.getSelectedFile().getAbsolutePath(); 
于 2013-02-24T22:59:41.187 回答