【XML】XML中的五个保留字符及实体引用


我们知道,在 XML 中,一些字符拥有特殊的意义。

如果你把字符 "<" 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。

这样会产生 XML 错误:

<message>if salary < 1000 then</message>

为了避免这个错误,请用实体引用来代替 "<" 字符:

<message>if salary &lt; 1000 then</message> 

在 XML 中,有 5 个预定义的实体引用:

实体引用 字符 字符名称
&lt; < 小于
&gt; > 大于
&amp; & 和号
&apos; ' 单引号
&quot; " 引号

注释:在 XML 中,只有字符 "<" 和 "&" 确实是非法的。大于号是合法的,但是用实体引用来代替它是一个好习惯。

在XML文档中,构成元素内容或属性的字符一般用它本身表示,但对于XML中的保留字符如“<”,“>”等就不适用了。在XML文档中如果要使用到保留字符的话就要利用实体引用方式来表示。上表列出了XML中的五个保留字符及实体引用。

例:实体引用实例,文件名exa.xml。

<?xml version="1.0" encoding="gb2312" ?>

<recommendation>

<title>&lt; &lt;红楼梦&gt; &gt; &amp; &lt; &lt;水浒传&gt;&gt;</title>

</recommendation>

 

 

     实体引用解决了如何在元素值或属性值中使用XML的保留字符。但是,当XML文档中使用到较多的保留字符时,采用实体引用方式来处理就比较繁琐了,而且代码的可读性也降低了,使用CDATA标记就是一种比较好的解决办法。CDATA标记以“<![CDATA[”开始,以“]]>”结束,而对于CDATA标记之间的内容可以直接使用XML的保留字符,而不需要通过实体引用。同样,上题改成使用CDATA标记。

例:  CDATA的使用,code.xml。

<?xml version="1.0" encoding="gb2312" ?>

<recommendation>

  <title>

    <![CDATA[ <<红楼梦>> &<<水浒传>> ]]>

  </title>

</recommendation>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM