属性文件的相对路径

de3:

我正在使用属性文件:

try 
{
    properties.load(new FileInputStream("filename.properties"));
} 
catch (IOException e) 
{
}

我应该放在哪里filename.properties我不想指定绝对路径,因为此代码必须在不同平台上工作。我试图将其放置在与de class相同的目录中,但是它不起作用。(抱歉,这是一个愚蠢的问题)

也许我可以某种方式获得当前课程的放置路径?

纪尧姆:

确保您的属性文件可用于已编译(.class)文件,并以这种方式获取

getClass().getResource("filename.properties") // you get an URL, then openStream it

要么

getClass().getResourceAsStream("filename.properties") // you get an InputStream

例:

import java.net.URL;
public class SampleLoad {
    public static void main(String[] args) {
        final URL resource = SampleLoad.class.getResource("SampleLoad.class");
        System.out.println(resource);
    }
}

这个主程序在运行时检索其自己的编译版本:

文件:/ C:/ _ projects / toolbox / target / classes / org / game / toolbox / SampleLoad.class

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章