如何有效地阅读元数据文件?

时间:2010-12-10 16:50:21

标签: java metadata

我当前的项目是使用元数据文件来设置属性而无需编译。目前我以这种方式设置它:

metadata.txt
[property] value <br/>
[property2] value2

File f = new File("metadata.txt");
BufferedReader in = new BufferedReader(new FileReader(f));
String variable1 = "";
String variable2 = "";

现在使用BufferedReader读取此文件并按特定顺序获取信息。如:

variable1 = in.readLine();
variable2 = in.readLine();

我想知道有没有更好的方法来做到这一点,而不必逐行阅读?我试图考虑使用循环,但我不确定如何解决这个问题,因为我想为每个属性设置不同的String变量。

此外,我没有在此程序中使用GUI,因此我正在编辑原始数据。

2 个答案:

答案 0 :(得分:0)

而是使用java.util.Properties API。它的设计正是为了这个目的。

创建一个filename.properties文件,其中key = value条目以换行符分隔:

key1=value1
key2=value2
key3=value3

将文件放在类路径中(或将其路径添加到类路径中)并按如下方式加载:

Properties properties = new Properties();
properties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("filename.properties"));

然后您可以按键获取值,如下所示:

String key1 = properties.getProperty("key1"); // returns value1

另见:

答案 1 :(得分:0)

我不确定这是否是这个问题的答案。

您可以使用java.util.Properties及其方法来保存或加载文件中的属性。如果你没有做一些特殊的事情,你的元数据文件就像一个属性文件。