国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > XML > 正文

XML CDATA是什么?

2024-09-05 20:53:39
字體:
來源:轉載
供稿:網友

All text in an XML document will be parsed by the parser.
XML文檔中的所有文本都會被解析器解析。

Only text inside a CDATA section will be ignored by the parser.
只有CDATA部分的文本會被解析器忽略

Parsed Data
被解析的數據
XML parsers normally parse all the text in an XML document.
XML解析器通常會解析XML文檔里的所有文本

解析數據
XML 解析器通常情況下會處理XML文檔中的所有文本。

當XML元素被解析的時候,XML元素內部的文本也會被解析:

<message>This text is also parsed</message>

XML解析器這樣做的原因是XML元素內部可能還包含了別的元素,象下面的例子,name元素內部包含了first和last兩個元素:

<name><first>Bill</first><last>Gates</last></name>

解析器會認為上面的代碼是這樣的:

<name> <first>Bill</first> <last>Gates</last></name>

轉義字符
不合法的XML字符必須被替換為相應的實體。

如果在XML文檔中使用類似"<" 的字符, 那么解析器將會出現錯誤,因為解析器會認為這是一個新元素的開始。所以不應該象下面那樣書寫代碼:

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

為了避免出現這種情況,必須將字符"<" 轉換成實體,象下面:

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

下面是五個在XML文檔中預定義好的實體:

&lt; < 小于號
&gt; > 大于號
&amp; &
&apos; ' 單引號
&quot; " 雙引號

實體必須以符號"&"開頭,以符號";"結尾。
注意: 只有"<" 字符和"&"字符對于XML來說是嚴格禁止使用的。剩下的都是合法的,為了減少出錯,使用實體是一個好習慣。

CDATA部件
在CDATA內部的所有內容都會被解析器忽略。

如果文本包含了很多的"<"字符和"&"字符――就象程序代碼一樣,那么最好把他們都放到CDATA部件中。

一個 CDATA 部件以"<![CDATA[" 標記開始,以"]]>"標記結束:

<script><![CDATA[function matchwo(a,b){if (a < b && a < 0) then{return 1}else{return 0}}]]></script>

在前面的例子中,所有在CDATA部件之間的文本都會被解析器忽略。

CDATA注意事項:
1.CDATA部件之間不能再包含CDATA部件(不能嵌套)。如果CDATA部件包含了字符"]]>" 或者"<![CDATA[" ,將很有可能出錯哦。

2.同樣要注意在字符串"]]>"之間沒有空格或者換行符。

<![CDATA[ ]]>是什么意思???
=================================================

標明是純文本的,沒有這個的話 <  >  & 字符是不能直接存入XML的,需要轉義,而用這個標記則不需要轉義而將這些符號存入XML文檔。
可以避免未預料的特殊符號導致XML解析出錯。

c#涉及到關于XML的CDATA和驗證有效性的問題
我剛開始學習XML的東西,這里面我遇到一個叫做CDATA的段。這里面的解釋是在CDATA里面的所有東西都會被解析器忽略我不清楚這是什么意思。用簡單的話來說就是CDATA什么時候用,這里面的東西有什么用。如果用這個了,會產生什么樣子的結果。
還有就是XML有效性的驗證。這個是什么意思,為什么要驗證有效性呢,一般怎么驗證呢,方法如何?我看書上說有DTD和XML Schema的兩個方法,如何用,有什么區別呢?
問題雖然多了點,但是就是兩個主要的問題。希望知道的大俠幫幫小弟,用通俗簡單一點的話告訴我。萬分感謝。
==================================================

當你用FLASH和xml結合做網站應用程序時,例如讓人自由輸入姓名時,人們可以輸入一些符號,例如∶"<"、">"、"/"、"?"等,當生成XML時,會破壞了XML結構,使數據中斷。

這就要用XML CDATA

在XML文檔中的所有文本都會被解析器解析。

只有在CDATA部件之內的文本會被解析器忽略。

<![CDATA[ ]]>是什么意思?~

從數據庫里讀取數據生成XML文件,加個“<![CDATA[    ]]>“是什么意思?
Response.Write "<body><![CDATA["
Response.Write rs("message")
Response.Write "]]></body>"
============================================
標明是純文本的,沒有這個的話 <  >  & 字符是不能直接存入XML的,需要轉義,而用這個標記則不需要轉義而將這些符號存入XML文檔。

可以避免未預料的特殊符號導致XML解析出錯。

PCDATA和CDATA的區別究竟是什么呢?
=============================================
PCDATA表示已解析的字符數據。
   CDATA是不通過解析器進行解析的文本,文本中的標簽不被看作標記。
   CDATA表示里面是什么數據XML不會解析.比如可能是下面的一段

  <![CDATA[     if(a>b){     System.out.println(a);   }   ]]>

    注意上面的一個">"符號.


    PCDATA的數據是要給XML解析器去解析的,那上面的>去解析肯定會出錯了,所以要用實體定義.上面的數據如果用PCDATA表示如下:

      if(a&gt;b){
         System.out.println(a);
      }
   
cdata是在XML文檔里面使用的關鍵字,用來告訴瀏覽器,這部分內容不用解析,是給其他程序用的,比如JAVASCRIPT等等,#PCDATA是在 XML約束文檔里使用的,如DTD類型的約束文檔,在這里面表示元素的內容或屬性的取值范圍等等,是字符串形式的

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 民和| 虹口区| 当雄县| 安西县| 海门市| 会昌县| 奉新县| 全南县| 石泉县| 富顺县| 侯马市| 南靖县| 平果县| 唐海县| 常州市| 封丘县| 临武县| 齐河县| 巩义市| 镇平县| 天峻县| 南江县| 苍南县| 安新县| 余庆县| 鄄城县| 从江县| 响水县| 哈尔滨市| 本溪| 虞城县| 乳山市| 内乡县| 崇义县| 汕头市| 张家港市| 达拉特旗| 蓬溪县| 武功县| 承德市| 颍上县|