2

Java 中有一个默认的(文件系统?)位置。

例如,当您实例化 aJFileChooser而不指定要在哪个文件夹中打开时,它将在该默认位置打开。

我需要将该默认位置作为Path对象获取(不使用 JFileChooser,只是为了解释)。

我怎么才能得到它?

4

2 回答 2

3

您应该能够创建一个用户的主Path目录System.getProperty("user.home")

就像是...

Path path = FileSystems.getDefault().getPath(System.getProperty("user.home"));

更新

JFileChooser用于FileSystemView获取它的“默认”目录

 Path path = FileSystemView.getFileSystemView().getDefaultDirectory().toPath()

同样,您也可以使用类似...

Path docs = FileSystems.getDefault().getPath(System.getProperty("user.home"), "Documents");
Path myDocs = FileSystems.getDefault().getPath(System.getProperty("user.home"), "My Documents");
Path userHome = FileSystems.getDefault().getPath(System.getProperty("user.home"));

并测试它们是否真的存在

于 2013-07-19T00:49:15.363 回答
1

不确定这是否是您要查找的内容... 对于 JFileChooser,默认目录通常是 Windows 上的“我的文档”文件夹,而 Unix 上是用户的主目录。来源

如果你想要工作目录的路径,那么 CurrentClass.class.getProtectionDomain().getCodeSource().getLocation().getPath()。

于 2013-07-19T00:19:04.280 回答