gpt4 book ai didi

带参数的 Java 属性

转载 作者:行者123 更新时间:2023-12-01 05:41:57 25 4
gpt4 key购买 nike

我最近刚刚了解了java中的Properties类,并且我正在尝试将我的旧配置文件转换为与Properties类兼容。我想知道为此类内容设置属性文件的最佳方法是什么:

Object type1
name obj1
age age1

Object type2
name obj2
age age2

我使用空格是因为我使用扫描仪来解析文件。我将创建一个存储不同对象的对象列表,每个对象都有某些参数,我可以从配置文件中获取这些参数。因此,当我阅读该文件时,我将获取属性并创建对象并将其存储到我的列表中。

我不想使用 XML 来创建我的属性文件。我想要用户创建一些简单的东西,并且我可以在 Java 中轻松阅读一些东西。

有什么建议吗?

编辑:我想尝试得到一些不需要编号的东西。例如,在 XML 中,您可以执行以下操作:

<table>
<fields>
<field>
<type>type1</type>
</field>
<field>
<type>type2</type>
<field>
</fields>
</table>

显然,制作这样的 XML 文件会更容易,但我想以非 XML 方式实现。

最佳答案

属性键应该是唯一的。我建议使用数字中缀。

field1.type = type1
field1.name = obj1
field1.age = age1

field2.type = type2
field2.name = obj2
field2.age = age2

然后您可以在增量循环中收集它们,如下所示:

Properties properties = new Properties();
properties.load(input);
List<Field> fields = new ArrayList<Field>();

for (int i = 1; i < Integer.MAX_VALUE; i++) {
String type = properties.getProperty("field" + i + ".type");
if (type == null) break;
String name = properties.getProperty("field" + i + ".name");
String age = properties.getProperty("field" + i + ".age");
fields.add(new Field(type, name, age));
}
<小时/>

与具体问题无关,我相信 XML 更容易维护和解析,例如使用 JAXB。

关于带参数的 Java 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6931450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com