首页 文章

如何在XML中转义&符号,以便它们在HTML中呈现为实体?

提问于
浏览
462

我有一些XML文本,我希望在HTML页面中呈现 . 此文本包含一个&符号,我想在其实体表示中呈现: & .

如何在源XML中转义此&符号?我尝试了 & ,但这被解码为实际的&符号( & ),即invalid in HTML .

所以我想以这样的方式逃避它,它将在使用XML输出的网页中呈现为 & .

12 回答

  • 0

    如何使用unicode \u0026 ?在我的Android XML文件中为我工作 . 如果出现问题,有人让我知道 .

  • 183

    我试过&amp,但它没有用 . 基于Wim ten Brink的答案,我试过放大器并且它起作用了 .

    我的一位开发人员建议我使用&无论它呈现多少次都能奏效 .

  • 59

    & 应该工作得很好,维基百科有一个List of predefined entities in XML .

  • 3

    考虑一下你的XML是否如下所示 .

    <Employees Id="1" Name="ABC">
      <Query>
        SELECT * FROM EMP WHERE ID=1 AND RES<>'GCF'
      <Query>
    </Employees>
    

    您不能直接使用 <> ,因为它会抛出错误 . 在这种情况下,您可以使用 &#60;&#62; 来代替它 .

    <Employees Id="1" Name="ABC">
      <Query>
        SELECT * FROM EMP WHERE ID=1 AND RES &#60;&#62; 'GCF'
      <Query>
    </Employees>
    

    Click here查看所有代码 .

  • 40

    &amp; 是在XML文档的大多数部分中表示&符号的方法 .

    如果要在HTML中显示XML,则需要首先创建正确编码的XML(包括将 & 更改为 &amp; ),然后使用它来创建正确编码的HTML(这涉及再次将 & 更改为 &amp; ) . 这导致:

    &amp;amp;
    

    有关XML编码的更全面说明,请参阅:

    What characters do I need to escape in XML documents?

  • 0

    <xsl:text disable-output-escaping="yes">&amp;&nbsp;</xsl:text> 会做的伎俩 .

  • 111

    相关问题是如何在此类内容包含&符号时编码XML元素内容 - 如果XML是使用GET操作提交的URI的一部分 . (暂且不谈这种API的智慧 - 这是我今天必须处理的事情 . )我尝试了上面提到的所有内容,唯一真正有效的是 %26amp; 需要 %26 对第一个字符进行URL编码&符号的XML编码 . 需要 %26 之后的 amp; ,因为URI的XML部分正在加载到XML文档服务器端 . 因此,在这个有趣的场景中,有必要将两种编码方法结合在一起 .

  • 367

    当您的XML包含 &amp;amp; 时,这将生成文本 &amp; .

    在HTML中使用它时,它将呈现为 & .

  • 2

    根据 §2.4 of the XML 1.0 spec ,您应该能够使用 &amp; .

    我试过&amp;但这是不允许的 .

    你确定它不是一个不同的问题吗? XML明确地将此定义为逃避&符号的方法 .

  • 3

    & 字符本身是XML中的转义字符,因此解决方案是将它与 & 的Unicode十进制等效项连接起来,从而确保不存在XML解析错误 . 也就是说,将字符 & 替换为 & .

  • 9

    CDATA标签?

    <![CDATA[
           This is some text with ampersands & other funny characters. >>
         ]]>
    
  • 4

    在我的情况下,我不得不将其更改为 %26 .

    我需要在URL中转义 & . 所以 &amp; 对我来说没有用 . urlencode 函数将 & 更改为 %26 . 这样,XML和浏览器URL机制都没有抱怨URL .

相关问题