Jak napisać wartość właściwości wielu linii przy użyciu PropertiesConfiguration?


100

Mam plik właściwości z właściwością z wartością listy (oddzieloną przecinkami), jak napisać tę właściwość w wielu wierszach? (ukośnik odwrotny po przecinku)?

Nie mogę znaleźć nic na ten temat, a przynajmniej o zamianie przecinka na przecinek i ukośnika odwrotnego.


1
Czy możesz wyjaśnić, nie jestem pewien, co próbujesz zrobić
Aviram Segal

1
Mam właściwość, która ma wartość wieloliniową, np .: key1 = val1, \ val2, \ val3 key2 = hello val1, val2, val3 są w osobnych wierszach, ale kiedy PropertiesConfigurations zapisuje je do pliku, zapisze je w jednym line
Uhkkgjhfjf Jgkjkhj

ach, mówisz o tym, jak to pisze ... ok
Aviram Segal

Odpowiedzi:



26

Sprawdź w podręczniku użytkownika pliki właściwości :

Znaki specjalne i ucieczki :

Jeśli potrzebujesz znaku specjalnego we właściwości, takiej jak wysunięcie wiersza, tabulacja lub znak Unicode, możesz określić go za pomocą tej samej notacji ze ucieczką używanej dla ciągów Java. Separatorem listy (domyślnie „,”) można też wprowadzić zmiany znaczenia:

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

Backslashes są trudniejsze.

Listy i tablice :

Możesz określić listę wartości w pliku właściwości, używając tego samego klucza w kilku wierszach:

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

16

Musisz połączyć \nznak w treści i ucieczkę kontynuacji linii ( \<eol>na końcu linii), aby uzyskać właściwość wielowierszową faktycznie reprezentowaną w pliku właściwości i w zwracanej wartości:

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

Nie jestem pewien, czy można skonfigurować wspólną konfigurację, aby faktycznie używała tej składni do pisania.


0

Inną opcją może być użycie jednego z formatów właściwości zaprojektowanych do obsługi wartości wieloliniowych.

XML dobrze radzi sobie z właściwościami wielowierszowymi, ale zawiera dużo szumu.

MProps: to przykład formatu prawie bez specjalnego formatowania: https://github.com/mprops/mprops-java

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.