在JFileChooser
对话框中,用户浏览到包含其配置文件的位置。我想将该位置作为工作目录,但是System.getProperty("user.dir")
似乎指向应用程序启动的位置。我该如何解决?
假设
D:\netbean\projects\test
那就是应用程序启动的地方。然后,用户单击按钮并浏览到
D:\configs
代码看起来像
File selectedFile = fc.getSelectedFile();
myTextArea.setText("Working directory is " + System.getProperty("user.dir") + "\n" );
指向netbeans文件夹,在我的情况下这是错误的。
最佳答案
System.getProperty("user.dir")
是在运行时定义的系统属性,
运行JVM的目录。
它与包含在JFileChooser
中选择的文件的目录没有关系。
您可以使用getParentFile()
的File
方法来检索包含用户选择的文件的文件夹:
File selectedFile = fc.getSelectedFile();
myTextArea.setText("Parent directory is " + selectedFile.getParentFile() + "\n" );