Добавление нового тега строки / разрыва в XML [дубликат]
этот вопрос уже есть ответ здесь:
- Как добавить строку (строки) в файл XML? 2 ответы
Я пытался добавить новую строку / разрыв в код в XML и не удалось.
но:
<br />
<br>
вот пример кода, с которым я работаю. Я включил "
" чтобы показать, где разрыв находится в коде.
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="dummy.xsl"?>
<item>
<summary>Tootsie roll tiramisu macaroon wafer carrot cake.
Danish topping sugar plum tart bonbon caramels cake.
</summary>
</item>
14 ответов:
новая строка XML
С XML
- возврат каретки:

- строки:

или попробуйте, как @ dj_segfault предложил (см. Его ответ) с CDATA;
<![CDATA[Tootsie roll tiramisu macaroon wafer carrot cake. Danish topping sugar plum tart bonbon caramels cake.]]>
вам не нужно ничего необычного: следующее содержит новую строку (два, на самом деле):
<summary>Tootsie roll tiramisu macaroon wafer carrot cake. Danish topping sugar plum tart bonbon caramels cake. </summary>вопрос в том, почему эта новая строка не имеет желаемого эффекта: и это вопрос о том, что получатель XML на самом деле делает с ним. Например, если получатель переводит его в HTML и HTML отображается в браузере, то новая строка будет преобразована в пробел браузером. Вы должны рассказать нам что-то об обработке трубопровод.
решение этого вопроса:
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="dummy.xsl"?> <item> <summary> <![CDATA[Tootsie roll tiramisu macaroon wafer carrot cake. <br /> Danish topping sugar plum tart bonbon caramels cake.]]> </summary> </item>добавить
<br />внутри the<![CDATA]]>это позволяет линии ломаться, тем самым создавая новую линию!
вы вероятно используете Windows, поэтому новая строка
CR + LF(возврат каретки + перевод строки). Так что решение:<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="dummy.xsl"?> <item> <summary>Tootsie roll tiramisu macaroon wafer carrot cake. Danish topping sugar plum tart bonbon caramels cake. </summary> </item>для Linux есть только
LFи только для Mac OSCR.в вопросе там показал путь Linux.
Это решение сработало для меня:
<summary>Tootsie roll tiramisu macaroon wafer carrot cake. 
Danish topping sugar plum tart bonbon caramels cake.</summary>вы будете иметь текст в две строки.
это сработало для меня с помощью XmlReader.Метод read.
вы, вероятно, нужно положить его в блок CDATA сохранять пробельные символы
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="dummy.xsl"?> <item> <summary> <![CDATA[Tootsie roll tiramisu macaroon wafer carrot cake. Danish topping sugar plum tart bonbon caramels cake.]]> </summary> </item>
без использования CDATA, попробуйте
<xsl:value-of select="'
'" />обратите внимание на двойные и одинарные кавычки.
это особенно полезно, если вы не создаете xml ака текст.
<xsl:output method="text" />
самый простой способ дать разрыв строки-это сделать следующее:
1> добавьте следующее в CSS -e{display:block}
2> теперь везде, где вы хотите сделать разрыв строки, типа -<e></e>
была такая же проблема, когда мне пришлось разработать формат поля фиксированной длины.
обычно мы не используем разделитель строк для двоичных файлов но по какой-то причине наш клиент хотел бы добавить разрыв строки в качестве разделителя между записями. Они установили
но это не сработало, так как записи получили два дополнительных символа:
\n \n.... и так далее.сделал следующие изменения и просто работать.
= >
после unmarshaling Java интерпретирует как символ новой строки.
хотел добавить мое решение:
< br/ >это примерно так же, как было предложено выше
В моем случае я должен был использовать<Для > для > Проще говоря<br />не работает.
способ сделать разрыв строки в XML-это использовать

Он работал для меня в Eclipse IDE, когда я разрабатывал свой XML-макет и использовал TextView.
Это можно решить простым атрибутом CSS:
XML:
<label name="pageTac"> Hello how are you doing? Thank you I'm Good</label>CSS
.pageText{ white-space:pre !important; // this wraps the xml text.}HTML / XSL
<tr> <td class="pageText"><xsl:value-of select="$Dictionary/infolabels/label[@name='pageTac']" /> </td></tr>
(Using system.IO)вы можете просто использовать
\nдля новой строки и\tперед строкой, чтобы отступить его.например
c#:public string theXML() { string xml = ""; xml += "<Scene>\n"; xml += "\t<Character>\n"; xml += "\t</Character>\n"; xml += "</Scene>\n"; return xml; }это приведет к выходу: http://prntscr.com/96dfqc