如何从Java

时间:2017-03-14 06:47:36

标签: java

我正在尝试直接从我的Java项目的资源目录加载属性文件,并获得空指针异常。有人可以解释一下怎么做吗?

代码 -

String resourceName = "config-values.properties"; 
Properties props = new Properties();
try(InputStream resourceStream = getClass().getClassLoader().getResourceAsStream(resourceName)) {
            props.load(resourceStream);
        }

我的文件夹结构是 - / src / packageName和/ src / resources /

3 个答案:

答案 0 :(得分:2)

以下代码期望您尝试访问的资源存在于类路径中。

getClassLoader().getResourceAsStream(resourceName))

假设您的文件存在于src / resources中:您可以在类路径中添加 src / resources / 。我不知道你使用的是哪个IDE,但是这里有一些在类路径中添加目录的方法:

答案 1 :(得分:0)

InputStream resourceStream  = 
 getClass().getResourceAsStream("/package/folder/foo.properties");

尝试以上代码。

希望这会有所帮助。

答案 2 :(得分:0)

添加另一种无需流的方式

File ourFile = new File(getClass().getClassLoader().getResource("yourFile.txt").getFile());

然后您可以做类似的事情

ourFile.getAbsolutePath()