根据键值从属性文件中有选择地加载属性

时间:2014-10-10 17:54:40

标签: java properties namespaces

我有一个属性文件,其值为

xxx.key1 = value1
xxx.key2 = value2

yyy.key3 = value3
yyy.key4 = value4

'xxx''yyy'可视为2个不同的命名空间。 如何加载属性文件,以便我只能加载'xxx''yyy'的属性?

1 个答案:

答案 0 :(得分:0)

只需读取文件的每一行,只返回与该命名空间匹配的值。

Scanner scan = new Scanner(new File("yourfilepath"));
Map<String,String> map = new HashMap<String, String>();
String value = "";
while(scan.hasNext())
{
    value = scan.nextLine();
    if(value.indexOf("xxx") != -1)
    {
        map.put(value.split(" = ")[0], value.split(" = ")[1]);
    }
}

//now map has your key value pairs

如果您的属性是这样的

xxx.key1 =值 然后在分裂(“=”)(没有空格)