Як записати значення властивості декількох рядків за допомогою PropertiesConfiguration?


99

У мене є файл властивостей із властивістю зі значенням List (розділені комами), як записати це властивість у багаторядковий? (коса коса риса після коми)?

Я нічого не можу знайти про це або, принаймні, про втечу комами до коми та нахилу.


1
Ви можете пояснити, я не впевнений, що ви намагаєтесь зробити
Авірам Сегал

1
У мене є властивість, яка має багаторядкову долину, наприклад: key1 = val1, \ val2, \ val3 key2 = hello val1, val2, val3 знаходяться в окремих рядках, але коли PropertiesConfigurations запише їх у файл, він запише їх в один рядок
Uhkkgjhfjf Jgkjkhj

ах, ви говорите про те, як це пише ... нормально
Авірам Сегал

Відповіді:



26

Перевірте посібник користувача для файлів властивостей :

Спеціальні персонажі та втеча :

Якщо вам потрібен спеціальний символ у властивості, як подача рядків, таблиця або символ Unicode, ви можете вказати його з тим самим екранованим позначенням, що використовується для Java Strings. Розділювач списку ("," за замовчуванням) також можна екранувати:

key = This \n string \t contains \, escaped \\ characters \u0020

Поворотний скіс є складнішим.

Списки та масиви :

Ви можете вказати список значень у файлі властивостей, використовуючи один і той же ключ у декількох рядках:

# chart colors
colors.pie = #FF0000;
colors.pie = #00FF00;
colors.pie = #0000FF;

15

Вам потрібно поєднати \nсимвол всередині вмісту та втечу продовження рядка ( \<eol>в кінці рядка), щоб отримати властивість із декількома рядками, яка насправді буде представлена ​​у файлі властивостей та у поверненому значенні:

KEY1=first line\n\
second line\n\
last line
KEY2=another key

Не впевнений, чи можна налаштувати загальну конфігурацію, щоб насправді використовувати цей синтаксис для написання.


0

Іншим варіантом може бути використання одного із форматів властивостей, призначеного для підтримки багаторядкових значень.

XML може добре обробляти багаторядкові властивості, але він має багато шуму.

MProps: це приклад формату, який майже не вимагає спеціального форматування: https://github.com/mprops/mprops-java

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.