读取属性文件的正确方法

correct way to read properties file

我找不到加载属性文件的正确方法。 结构是:在 src/com.training 里面,我有我的 class 和属性文件。我必须使用绝对路径读取它,如下面的代码所示,才能使其正常工作:

Properties prop = new Properties();
InputStream input = null;
input = new FileInputStream("D:/Dev/workspace/Training/src/com/training/consolemessages.properties");                 
prop.load(input);
System.out.print(prop.getProperty("INITIAL_MESSAGE"));

如何使用相对路径在此代码中工作以访问属性文件。正在访问的属性文件和 class 都处于同一级别 '/src/com.training'

您可以将属性文件放入 src/resources 文件夹,然后在类路径中获取它们。

你可以这样做:

ResourceBundle bundle = ResourceBundle.getBundle("resources/consolemessages");

System.out.println(bundle.getString("INITIAL_MESSAGE"));

使用 ResourceBundle 时,Locale 支持也很容易实现,如果您需要具有特定于语言的属性。