Java 在地图中存储属性文件

Java 在地图中存储属性文件,java,map,properties,config,Java,Map,Properties,Config,我想读取一个常用的属性文件,并将属性和他的值放入一个Map对象中。 从技术上讲,属性文件 attr1=hello attr2=java attr3=world 将动态地成为这样的贴图对象 +-------+-------+ + K | V + +-------+-------+ + attr1 | hello + +-------+-------+ + attr2 | java + +-------+-------+ + attr3 | world + +-------+--

我想读取一个常用的属性文件,并将属性和他的值放入一个Map对象中。 从技术上讲,属性文件

attr1=hello
attr2=java
attr3=world
将动态地成为这样的贴图对象

+-------+-------+
+   K   |   V   +
+-------+-------+
+ attr1 | hello +
+-------+-------+
+ attr2 | java  +
+-------+-------+
+ attr3 | world +
+-------+-------+
最后,属性文件中的内容应该无关紧要,整个文件将被保存为地图。
使用java.Properties可以做到这一点吗?或者文件读取器或具有特殊解析功能的InputStream是必要的吗?

java.util.Properties
还实现了
Map

要从文件加载属性,请将属性“
load()
方法与
Reader
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(...) {
    ...
}

java.util.Properties
也是
Map
的实现。对读取器或输入流使用属性“
load()
方法。谢谢,非常有用,但这并不能解决我的问题。我需要地图来创建我的UI。每个键都是标题,每个值都是内容的一部分。因此,访问应该是动态的,因此我可以通过指定映射来创建GUI。你能为此编辑你的答案吗?@muffin是的,
Properties
实现有点像
Map
,所以它可能是UI填充中的问题。我已经更新了答案,并尝试了它,让我知道结果。
Properties config = new Properties();
try {
    config.load(<this.class>.getResourceAsStream(<property-file-name>)); //exampl input stream

    Map<String, String> map = new HashMap<String, String>();
    for (final String name: config.stringPropertyNames())
        map.put(name, config.getProperty(name));

} catch(...) {
    ...
}