Java: читать неизвестное количество свойств - PullRequest
1 голос
/ 13 сентября 2011

У меня есть файл свойств Java, определенный как что-то вроде:

Property.1=value1
Property.2=value2
...

Здесь может быть любое количество свойств.

Я знаком с тем, как читать и использовать свойства Java,но я не уверен, как я буду кодировать свойства чтения, когда я не знаю их количество.Моя идея псевдокода будет выглядеть примерно так:

// Somehow get the number of properties
for (int i=0; i<properties.size(); i++ {
   prop.getProperty("Property"+i);
...
}

Кто-нибудь знает, как читать переменное число свойств?

Ответы [ 3 ]

6 голосов
/ 13 сентября 2011

Если ваши свойства нумеруются последовательно, как показывает ваш пример:

int i = 1;
String p;
while ((p = prop.getProperty("Property."+i)) != null) {
  // property #i has value p
  i++;
}
1 голос
/ 13 сентября 2011

Вы можете взглянуть на класс Commons Collections ExtendedProperties и его метод subset

, который позволяет получить все свойства с заданным префиксом ('Property. 'например)

1 голос
/ 13 сентября 2011

Класс java.util.Properties может загружаться из входного потока.

http://download.oracle.com/javase/6/docs/api/java/util/Properties.html#load%28java.io.InputStream%29

Просто передайте новый Properties объект входному потоку из файла и позвольте ему катиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...