我想读取一个常用的属性文件,并将该属性及其值放入Map对象中。 从技术上讲,属性文件如
attr1=hello
attr2=java
attr3=world
会动态变成像这样的地图对象
+-------+-------+
+ K | V +
+-------+-------+
+ attr1 | hello +
+-------+-------+
+ attr2 | java +
+-------+-------+
+ attr3 | world +
+-------+-------+
最后,属性文件中的内容并不重要,整个文件只会保存为Map。 是否可以使用java.Properties执行此操作,还是需要特殊解析的FileReader或InputStream?
答案 0 :(得分:1)
java.util.Properties
也是Map
的实现。
要从文件加载属性,请使用属性' load()
或Reader
的{{1}}方法。
例如,
InputStream
如果您只想要Properties config = new Properties();
try {
config.load(<this.class>.getResourceAsStream(<property-file-name>)); //example input stream
//now can access it as a Map instance
config.get(<Key>);
config.entrySet();
//additionally, you can access Properties methods
config.getProperty(<property-name>);
} catch(...) {
...
}
个实例,让我们说Map
类型,需要通过迭代属性名称将属性转换为所需的地图实例。
Map<String, String>