从位于java目录中的文件名获取文件路径

时间:2013-04-15 13:54:44

标签: java file jasper-reports

我在一个名为“reports”的目录中有一些jasper报告文件,它位于eclipse IDE中“src”包底部2-3级。如何获取“reports”文件夹中的相关文件路径。我不想得到像“C:\ Users \ Kara \ workspace \ MyProject \ src \ main \ resources \ reports \ someFile.jrxml”这样的路径。我试图通过遵循代码来获取它们,但它没有给我真正的路径。

File testFile = new File("someFile.jrxml");
String absPath = testFile.getAbsolutePath();

2 个答案:

答案 0 :(得分:2)

如果报告总是在您的类路径中(假设是标准的Maven目录布局),请使用Class.getResource()/ClassLoader.getResource()获取指向您的报告文件的URL。您可以使用此URL提取报告文件的绝对路径。

URL reportUrl = getClass().getResource("reports/someFile.jrxml");

答案 1 :(得分:0)

你可以试试这个:

URL url = getClass().getResource("/reports/someFile.jrxml");
url.getPath();