将多个java属性值读入字符串或数组

时间:2016-12-02 05:38:49

标签: java arrays string properties

希望有人能够提供帮助,我在java上比较新,并试图找出如何使用属性函数来读取多个属性值,不一定按顺序或完整列表然后将它们放入一个数组或一个字符串,以便我可以传递到另一个类来做" stuff"喜欢写一个文件。可能有数百个属性值,只想选择我想要的。 我能够得到一个像properties.getProperty(" ip");并分配给一个字符串,但在下面有多个问题......

非常感谢任何帮助。

Properties properties = new Properties();

try {
    properties.load(new FileInputStream(args[0]));
} 
catch (IOException e) {
    System.out.println("Error - IOException - File not found...");
}

String model = properties.getProperty("model"); 
String codeLevel = properties.getProperty("codeLvl");

String[] dmdCommand = new String[properties.getProperty("ip")
        + properties.getProperty("rangeS")
        + properties.getProperty("rangeL")
        + properties.getProperty("PhyPG")
        + properties.getProperty("PhyLDEV")
        + properties.getProperty("PhyProc")
        + properties.getProperty("PhyExG")
        + properties.getProperty("PhyExLDEV")
        + properties.getProperty("PhyCMPK")];

如果您需要额外的信息或数据样本供应。 欢呼并提前感谢:)

1 个答案:

答案 0 :(得分:1)

如果您知道属性的“键”,则可以使用ArrayList字符串来存储属性。

例如:

List<String> propertyList = new ArrayList<String>();
propertyList.add(properties.getProperty("rangeS"));

这里我假设您不知道要从属性中提取多少个键,因此建议使用ArrayList,但如果您确实知道要选择的键数,你绝对应该使用一串字符串。

例如:

String[] propertyArray = new String[limit];

for(int i=0;i<limit;i++){
    propertyArray[i]= new String(properties.getProperty(myKey));
}

这里,“myKey”可以编码为动态变化。