dom4j cdata (сохранить пробел) - PullRequest
0 голосов
/ 04 декабря 2009

Я пытаюсь получить текст cdata с узла, используя dom4j java. Моя проблема здесь заключается в том, что все разрывы строк удалены. По сути, мне нужно читать содержимое CDATA, как если бы это был тег

в HTML. 

 У вас есть идеи? У меня очень мало времени, чтобы сделать это, к сожалению, поэтому любая помощь будет оценена. 

 Спасибо! 

Ответы [ 2 ]

3 голосов
/ 04 декабря 2009

Если вам нужно, чтобы текст XML был статически определен как в блоке CDATA, он должен быть помечен в XML следующим образом:

<tag><![CDATA[This is
three
lines]]></tag>

Если ваше содержимое не находится в разделе CDATA, то есть:

<tag>This is
three
lines</tag>

произойдет нормальная обработка XML, что означает, что пробел нормализован.

0 голосов
/ 07 декабря 2009

Да, содержимое было в порядке. Я разобрался с ошибкой, это была проблема с данными.

dom4j автоматически НЕ удаляет пробелы в разделах cdata. Я читал содержимое файла из буферизованного читателя и использовал readLine и не добавлял разрывы строк, в результате чего весь документ xml становился -liner, в результате чего мой раздел cdata будет также одной строкой.

Извините, что не ответил ранее, я понял это пару дней назад ...

Спасибо!

...