W zgodnym interfejsie DOM API nic nie trzeba robić. Po prostu zapisz faktyczne znaki nowej linii do atrybutu, API zakoduje je poprawnie samodzielnie (patrz Canonical XML spec, section 5.2).
Jeśli zrobić własne kodowanie (tj zastępując \n
z
przed zapisaniem wartość atrybutu), API zakoduje swój wkład ponownie, powodując 

w pliku XML.
Dolna linia to, że wartość ciągu jest zapisana dosłownie. Dostajesz to, co wkładasz, nie musisz się wtrącać.
Jednak niektóre implementacje są niezgodne. Na przykład będą kodować znaki &
w wartościach atrybutów, ale zapomnieć o znakach nowej linii lub kartach. To stawia cię w pozycji przegranej, ponieważ nie możesz po prostu zastąpić nowych linii z wyprzedzeniem
.
te implementacje uratuje znaki nowej linii odkodowane, tak:
<xml attribute="line 1
line 2" />
Podczas analizowania takiego dokumentu, literalne znaki nowej linii w atrybutach są znormalizowane do jednego miejsca (ponownie, zgodnie z spec) - a więc oni są zgubieni.
Zapisywanie (i zatrzymywanie!) Znaków nowej linii w atrybutach jest niemożliwe w tych implementacjach.
możliwym duplikatu [Czy podziały wiersza w wartości atrybutu XML ważne?] (Http: // stackoverflow. com/questions/449627/is-line-breaks-in-xml-attribute-values-valid) –
zrobił przykład podobnego pytania: http://stackoverflow.com/a/29782321/611007 – n611x007
powiązane: https://stackoverflow.com/questions/260436/ - pokrewne: https://stackoverflow.com/questions/449627/ - pokrewne: https://stackoverflow.com/questions/1289524/ – n611x007