Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > про класс Properties


Автор: Devorior 20.5.2003, 10:39
записываю в определенном порядке пары ключ->значение в объект типа Properties и сохраняю в файл. Оказывается так, что при выводе две последних пары оказываются первыми. Можно это как-нибудь обойти и сделать так, чтобы вывод из файла с Properties соответствовал последовательности при вводе?

Автор: DarkDS 20.5.2003, 11:17
Нет. При закладке в проперти идет сортировка по ключу. Тем более что проперти информайия достается по ключу и не имеет значения последовательность элементов в файле или в памяти.

А что ты хотишь сделать?

Автор: Devorior 20.5.2003, 11:21
мне просто надо вывести список поле-значение в табличку, вот подумал что если Properties можно еще и на диск быстро сохранять, то можно их использовать, но мне нужно выводить в определенном порядке. Какую другую структуру для этого взять? (В принципе запись на диск не особо нужна, если понадобится, то напишу отдельную функцию)

Автор: DarkDS 20.5.2003, 11:57
Если сохранять не нужно... то скорее всего ТрииМар подойдет...
Или как другой вариант - если не нужно извлекать по ключу, а порядок очень важен, то намного проще сделать класс, который будет содержать нужные тебе значения и положить все это в ЛинкедЛист или АррайЛист smile.gif

Автор: DarkDS 20.5.2003, 11:57
Но для всех этих структур сохранение/считываение самому писать нужно будет...

Автор: Sun 20.5.2003, 12:18
Цитата(DarkDS @ 20.5.2003, 08:57)
Но для всех этих структур сохранение/считываение самому писать нужно будет...

Это зачем? Они все поддерживает интерфейс Serializable и могут сохранятся используя стандартные средства
Код

       ArrayList params = new ArrayList();
       params.add("key1");
       params.add("key2");
       params.add("key3");
       FileOutputStream ostream = new FileOutputStream("test.properties");
       ObjectOutputStream p = new ObjectOutputStream(ostream);
       p.writeObject(params);
       p.flush();

Автор: SmaLL 20.5.2003, 13:18
С сериализацией всЁ понятно, но если захочется использовать обычный тесктовый файл, то ...для всех этих структур сохранение/считываение самому писать нужно будет...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)