`

XML CDATA

阅读更多
有XML文档中的文本均会被解析器解析。

只有CDATA区段(CDATA section)中的文本会被解析器忽略。

Parsed Data
XML解析器通常会解析XML文档中所有的文本。

当某个XML元素被解析时,其标签之间的文本也会被解析:

<message>此文本也会被解析</message>
解析器之所以这么做是因为XML元素可包含其他的元素,就像这个例子中,其中的<name>元素包含着另外的两个元素(first 和 last):

<name><first>Bill</first><last>Gates</last></name>
而解析器会把它分解为像这样的子元素:

<name>
   <first>Bill</first>
   <last>Gates</last>
</name>
转义字符
非法的XML字符必须被替换为实体引用(entity reference)。

假如您在XML文档中放置了一个字符,例如"<",那么这个文档会产生一个错误,这是因为解析器会把它解释为新元素的开始。因此你不能这样写:

<message>if salary < 1000 then</message>
为了避免这个错误,您需要把字符"<"替换为实体引用,就像这样:

<message>if salary &lt; 1000 then</message>
在XML中有5个预定义的实体引用:
&lt; < 小于
&gt; > 大于
&amp; & 和号
&apos; ' 省略号
&quot; " 引号

注释:严格地讲,在XML中仅有字符"<"和"&"是非法的。省略号、引号和大于号是合法的,但是把它们替换为实体引用是个好的习惯。

CDATA
CDATA内部的所有东西都会被解析器忽略。

假如您的文本中包含了大量的"<"和"&"字符 - 就像编程代码中经常出现的情况一样 - 那么这个XML元素就可以被定义为一个CDATA部分。

CDATA区段开始于"<![CDATA[",结束于"]]>":

<script>
<![CDATA[
function matchwo(a,b)
{
if (a < b && a < 0) then
   {
   return 1
   }
else
   {
   return 0
   }
}
]]>
</script>
在上面的例子中,在CDATA区段中的所有东西都会被解析器忽略。

关于CDATA区段的注释:
CDATA区段不能包含字符串"]]>",所以,CDATA区段的嵌入是不被允许的。

同时也需要确保在"]]>"字符串中没有空格或折行。
分享到:
评论

相关推荐

    XML CDATA是什么?

    主要为大家介绍下XML CDATA是什么,学习xml的朋友可以参考下

    JAVA对象转换成XML(CDATA)

    CDATA:在标记CDATA下,所有的标记、实体引用都被忽略,而被XML处理程序一视同仁地当作字符数据看待,CDATA的形式:&lt;![CDATA[文本内容]]&gt;CDATA的文本内容中不能出现字符串“]]&gt;”,另外,CDATA不能嵌套。

    XML:标签CDATA用法

    XML:标签CDATA用法 XML:标签CDATA用法

    C#读取XML的CDATA节点内容实例详解

    首先看实例代码: 昨天读取了以下XML, 之前没有读取过类似的格式,用一种比较笨的方法读取的,记录下 &lt;?xml version=1.0?&gt; &lt;srvver&gt;1.0 &lt;srvcode&gt;000 ...[CDATA[ 执行成功!/&gt; &lt;Paramet

    包含CDATA的 字符串转换成xml

    本文档包含了一个完整的实例,可以实现含有CDATA 的字符串转换成xml

    XML CDATA的作用

    当你用FLASH和xml结合做网站应用程序时,例如你做在我研究游戏排行榜中,当让人自由输入姓名时,人们可以输入一些符号,例如∶"&lt;"、"&gt;"、"/"、"?"等,当生成XML时,会破坏了XML结构,使数据中断。

    php生成xml时添加CDATA标签的方法

    主要介绍了php生成xml时添加CDATA标签的方法,实例讲述了php操作XML文件的技巧,非常具有实用价值,需要的朋友可以参考下

    XML官方指南中文版(CHM) 下载

    XML CDATA 怎样让XML解析器知道某些文字不进行解析呢。使用CDATA。 XML编码 怎样把你的XML文档编码。 XML服务器 怎样在服务器上产生XML。 XML应用 怎样使用IE 5来操纵XML文件以及怎样产生一个完善的XML...

    .NET更新Xml中CDATA内容的方法实例

    [CDATA[&lt;h2&gt;.NET 开发]]&gt; &lt;siteurl&gt;//www.jb51.net&lt;/siteurl&gt;&lt;/net&gt;我们可以采用下面的方法修改 CDATA 节点的内容。 C# 代码 代码如下:System.Xml.XmlDocument d = new System.Xml.XmlDocument();d.Load(Server....

    java对象与xml的互相转换

    将一个java对象转换为xml文件,或者将一个xml文件转换为一个java对象。 (有人说需要jaxws-api-2.0.jar这个包,但是我做这个例子时没有用的,不过我还是把它附上,备用)

    asp.net自带类读写xml中的CDATA

    asp.net3.5及以上版本自带序列化类读写XML中的cdata数据(JSON数据格式),看代码就明白。

    DOM4j属性的详细介绍及相关的例子

    org.dom4j.CDATA : CDATA定义了XML CDATA区域 org.dom4j.CharacterData: CharacterData是一个标识接口,标识基于字符的节点。 org.dom4j.Comment : Comment定义了XML注释的行为 org.dom4j.Document : Docement接口...

    XML经典教程

    19 XML CDATA............................................................................................................43 20 XML 编码...................................................................

    如何处理xml中的CDATA脚本

    尝试使用此问题的解决方案[^],或使用此项目[^]或谷歌搜索其他内容:)

    网页中CDATA标记的说明

    CDATA是在XML文档里面使用的关键字,用来告诉浏览器,这部分内容不用解析,是给其他程序用的,比如JAVASCRIPT等等。 PCDATA是在 XML约束文档里使用的,如DTD类型的约束文档,在这里面表示元素的内容或属性的取值范围...

    c#中XML解析文件出错解决方法

    ”和“&”,对xml来说是禁止使用的,针对这种字符,解决方式是使用CDATA部件以”&lt;![CDATA[” 标记开始,以”]]&gt;”标记结束,是CDATA内部内容被解析器忽略。具体说明参考《XML CDATA是什么?》。 2.内容中含有低位...

    XML入门教程

    xml的入门教程,适合初学者 1 XML 简介 2 XML 的用途 3 XML 树结构 4 XML 语法规则 5 XML 元素 6 XML 属性 7 XML 验证 8 XML 验证器 ...19 XML CDATA 20 XML 编码 21 XML DOM 高级 22 XML Don't

    超全面javaweb第4天- 10 xml的CDATA区

    超全面javaweb第4天-_10_xml的CDATA区

    kettle 解析xml xml文档,配合kettle 解析xml stax方法,完整解析案例使用

    与上一个版本一起使用可以可以起到提高效率的目的。本人解析xml的真实文档

Global site tag (gtag.js) - Google Analytics