我的Java项目中的文件夹中有一个XML文件,我想获得它的绝对路径,因此我可以将其作为文件加载以便解析它(DOM)。我不想使用绝对/相对路径,而只想指定文件名,然后获取绝对路径。我尝试以几种不同的方式做到这一点,但是我得到的路径总是缺少一个文件夹名称。
我明白了:
C:\Users\user\workspace\projectName\Input.xml<br>
而不是:
C:\Users\user\workspace\projectName\\**Folder1**\\Input.xml
-
File input = new File(project.getFile("Input.xml").getLocation().toString());`
File input = new File(project.getFile("Input.xml").getRawLocation().makeAbsolute().toString());
File input = new File(project.getFile("Input.xml").getLocationURI().getRawPath().toString());
File input = new File(project.getFile("Input.xml").getFullPath().toFile().getAbsolutePath());
如何获得正确的路径,包括Folder1
?
答案 0 :(得分:0)
阅读你的问题(你的项目在工作区目录中)我想你是在谈论Eclipse中的一个项目。
您的应用程序运行到Eclipse的默认目录是项目的基础目录。
所以,如果你在主要的地方运行这样的东西:
localhost/magento/admin/
您应该会看到项目中的所有文件和目录。
因此,如果您想要的只是项目运行的绝对路径:
Files.newDirectoryStream(Paths.get("."))
.forEach(path -> {
System.out.println(path);
System.out.println(path.toFile().getAbsolutePath());
});
如果要打开仅指定名称的资源System.out.println(Paths.get(".").toFile().getAbsolutePath());
,我建议在目录中移动所需的所有文件并运行如下方法:
Input.xml