xml中是不是允许使用字符#或&?

Posted

技术标签:

【中文标题】xml中是不是允许使用字符#或&?【英文标题】:are characters # or & allowed in xml?xml中是否允许使用字符#或&? 【发布时间】:2012-08-04 04:10:11 【问题描述】:

我的 xml 中有特殊字符编码为 ascii 的值。 例如:

<?xml version="1.0" encoding="UTF-8"?>
<response>
    <name>&#381;irm&#363;n&#371;</name>
</response>

但是当我解析值name 时,我只得到&amp; 作为值。 是否允许在xml中使用#&amp;?还是我必须使用 cdata?

【问题讨论】:

【参考方案1】:

& 字符似乎是非法的,请改用(下面)。

&amp;

Invalid Characters in XML

# 字符应该没问题。

这也可能有用:http://xml.silmaril.ie/specials.html

【讨论】:

所以我必须设置值 &#381;irm&#363;n&#371;??【参考方案2】:

& 需要转义,因为它用于转义自身。所有转义都以 & 开头(&amp;quot;&amp;lt;&amp;gt;)。

&amp;amp;&

的转义

【讨论】:

所以我需要设置值 &#381;irm&#363;n&#371;??

以上是关于xml中是不是允许使用字符#或&?的主要内容,如果未能解决你的问题,请参考以下文章

XML中必须进行转义的字符

XML中的转义字符

xml特殊字符处理

xml转义字符 &lt;等符号出现的原因

C#中怎么把&符号写入XML,不是转义&这种形式的,只插入一个&符号?

(转)XML中必须进行转义的字符