JFileChooser显示错误的当前目录

时间:2015-07-22 09:17:02

标签: java swing jfilechooser

我有以下代码。问题是当我在FileChooser(例如C:\Windows\System32)中选择某个目录时,它会打印:C:\Windows(总是比实际低一级)。

JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new java.io.File("."));
chooser.setDialogTitle("Wybierz folder z logami");
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(true);

if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) {
  System.out.println("getCurrentDirectory(): " + chooser.getCurrentDirectory());
  path = chooser.getCurrentDirectory().toString();
  jLabel1.setText(path);

1 个答案:

答案 0 :(得分:1)

getCurrentDirectory()返回当前显示的目录的路径。如果在当前目录中选择子目录,则会将其视为当前选定的文件

因此使用getSelectedFile(),即使您知道它实际上是一个目录。