xml中的一些字符对应实体

来源:互联网 发布:和君咨询怎么样知乎 编辑:程序博客网 时间:2024/06/06 14:08
 

如何加载有外国和特殊字符的文档?

文档可以包含外国字符,例如:

<test>foreign characters (úóíÿ) </test>
例如 磲 的外国字符必须在前面加上 escape 序列。外国字符可以是 UTF-8 编码或用不同编码指定,如下所示:
<?xml version="1.0" encoding="iso-8859-1"?><test>foreign characters (磲) </test>

现在可以正确加载 xml 了。

其他字符是保留在 XML 中的,并且需要以不同的方式处理。下面的 xml:

<foo>This & that</foo>
产生如下错误:
此处不允许有空格。行 0000001: <foo>This & that</foo>位置  0000012: ----------^

此处 & 是 XML 句法结构的一部分,如果它仅仅放在 xml 数据源内部,那么不能解释为 &。您需要替换称为“实体”的特殊字符序列。

<foo>This & that</foo>

下面的字符需要相应的实体:

<&lt;&&amp;>&gt;"&quot;'&apos;
引号字符被用作标记中属性值的定界符,因此通常不能在属性值的内部使用。例如,下面的内容将返回错误:
<foo description="John´s Stuff">

此处的单引号既用作属性定界符,又在属性值自身中。为了纠正这个问题,可以将属性定界符换成双引号:

<foo description="John´s Stuff">

或者可以将单引号转义为实体 &apos;

<foo description="John&apos; Stuff">
上述两种方式都将通过 xml 对象模型中的 getAttribute 方法返回属性值 John's Stuff。同样,对于双引号,您可以使用实体
&quot;。

原创粉丝点击