Get the path of a directory using JFileChooser

2019-01-26 11:58发布

问题:

How can I get the absolute path of a directory using JFileChooser, just selecting the directory?

回答1:

Use:

chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
//or
chooser.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);

together with:

chooser.getCurrentDirectory()
//or
chooser.getSelectedFile();

then call getAbsoluteFile() on the File object returned.



回答2:

JFileChooser's getSelectedFile() method, returns a File object. Use the getAbsolutePath() to get the absolute name to the file.

modified example from the javadoc:

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


回答3:

Try:

chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);

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

System.out.println(fullPath);

fullPath gives you the required Absolute path of the Selected directory