我需要读取jar外面的xml文件。我不想使用相对路径。它是unix盒子上的绝对路径。据我了解,我猜有两种方法: - 1)更改jar的清单文件,并在类路径中添加该位置。在这种情况下,我可以使用getResource()吗? 2)在getResourceAsStream()中对路径进行硬编码。我的路径将是这样的" / usr / local / folder1 / folder2 /"。我读到我不能在类路径之外使用getResource(),我需要使用getResourceAsStream ()。
哪种方法更好?
答案 0 :(得分:1)
是的,getResourceAsStream
和getResource
都依赖于加载您的类或引导类的类加载器可见的路径。如果要使用绝对路径,只需使用FileInputStream
。
InputStream inputStream = new FileInputStream("/usr/local/folder1/folder2/myxml.xml");