属性文件中的属性列表

时间:2013-04-28 06:33:33

标签: java

通常,Java属性文件存储键值对。但是,在外部属性文件中仅将字符串列表存储为属性的最佳方法是什么?

2 个答案:

答案 0 :(得分:4)

如果您只想存储字符串列表,那么您不需要属性文件。

  1. 您可以将密钥以逗号分隔的方式存储在文本文件中。如果要访问它们,只需阅读完整文件并使用逗号分隔

  2. 另一种选择是您可以将所有密钥存储在文本文件中,以便每个密钥都在一行上。然后,您可以使用FileUtils.readLines(File file)获取所有密钥的列表。

  3. 如果您仍想将它们存储在属性文件中,则只能存储没有任何值的键。然后使用propertyNames获取所有密钥的列表。

答案 1 :(得分:0)

您可以在值中存储以逗号分隔的列表,并使用split(“\ s *,\ s *”)方法将它们分开。

key=value1, value2, value3

或者,如果您只需要一个值列表,则属性不合适,因为不保留键的顺序。您可以拥有一个文本文件,每个值包含一行

value1
value2
value3

你可以像这样使用BufferedReader

List<String> lines = new ArrayList<>();
try(BufferedReader br = new BufferedReader(new FileReader(file))) {
    for(String line; (line = br.readLine()) != null;)
        lines.add(line);
}