Добавление нового тега строки / разрыва в 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