在XML中添加新的行/ break标记

时间:2012-06-06 15:41:57

标签: xml

我一直在尝试为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.       
               &#xA; Danish topping sugar plum tart bonbon caramels cake.
     </summary>
  </item>

14 个答案:

答案 0 :(得分:84)

新行XML

使用XML

  1. 回车&#xD;
  2. 换行&#xA;
  3. 或尝试使用CDATA提出的@dj_segfault(见他的回答);

     <![CDATA[Tootsie roll tiramisu macaroon wafer carrot cake.                       
                Danish topping sugar plum tart bonbon caramels cake.]]>
    

答案 1 :(得分:36)

你不需要任何花哨的东西:下面包含一个新行(实际上是两行):

<summary>Tootsie roll tiramisu macaroon wafer carrot cake.       
         Danish topping sugar plum tart bonbon caramels cake.
</summary>

问题是,为什么这个新行没有达到预期的效果:这是一个关于XML的接收者实际上在做什么的问题。例如,如果收件人将其翻译为HTML并且HTML正在浏览器中显示,则新行将由浏览器转换为空格。您需要告诉我们一些有关处理流程的信息。

答案 2 :(得分:35)

这个问题的解决方案是:

<?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 />内添加<![CDATA]]>,这样就可以打破这一行,从而创建一个新行!

答案 3 :(得分:10)

您可能正在使用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.&#13;&#10;Danish topping sugar plum tart bonbon caramels cake.
     </summary>
  </item>

对于Linux,只有LF,仅适用于Mac OS CR

有问题的是显示Linux方式。

答案 4 :(得分:6)

这个解决方案对我有用:

<summary>Tootsie roll tiramisu macaroon wafer carrot cake. &#xD;Danish topping sugar plum tart bonbon caramels cake.</summary>

您将有两行文字。

这对我使用XmlReader.Read方法起作用。

答案 5 :(得分:5)

您可能需要将其放在CDATA block中以保留空白

<?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> 

答案 6 :(得分:2)

不使用CDATA,请尝试

<xsl:value-of select="'&#xA;'" />

请注意双引号和单引号。

如果您不创建xml,这将特别有用 又名文字。 <xsl:output method="text" />

答案 7 :(得分:1)

断线的最简单方法是执行以下操作:
1 GT;在CSS中添加以下内容 - e{display:block}
2 - ;现在,无论您想要换行,都要输入 -

<e></e>

答案 8 :(得分:1)

在XML中进行换行的方法是使用&#xA;

当我设计我的XML布局时,它在Eclipse IDE中对我有用。正在使用TextView。

答案 9 :(得分:1)

当我不得不开发固定长度的字段格式时会遇到同样的问题。

通常我们不对二进制文件使用行分隔符 但出于某种原因,我们的客户希望在记录之间添加换行符作为分隔符。他们设置了

&LT; record_delimiter value =&#34; \ n&#34; /&gt;

但由于记录中还有两个字符,因此无法正常工作:
&LT; record1&gt; \ n&lt; record2&gt; \ n ......等等。

是否有以下更改,它只是起作用。

&LT; record_delimiter value =&#34; \ n&#34; /&gt; =&GT; &LT; record_delimiter value =&#34;&amp; #xA;&#34; /&gt;

解组Java解释后  作为新线字符。

答案 10 :(得分:1)

想要添加我的解决方案:

&lt; br/ &gt;

与上面提出的基本相同 在我的情况下,我必须使用&lt for&lt;和&gt for&gt; 简单地放<br />不起作用。

答案 11 :(得分:0)

这可以通过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>

答案 12 :(得分:-1)

只需按下输入即可休息

<![CDATA[this is
my text.]]>

答案 13 :(得分:-3)

(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