溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

xml解析方式的示例分析

發(fā)布時(shí)間:2021-09-17 13:51:58 來源:億速云 閱讀:128 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“xml解析方式的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“xml解析方式的示例分析”這篇文章吧。

在XML文檔中的所有文本都會(huì)被解析器解析。只有在CDATA部件之內(nèi)的文本會(huì)被解析器忽略。

--------------------------------------------------------------------------------

解析數(shù)據(jù)
XML 解析器通常情況下會(huì)處理XML文檔中的所有文本。

當(dāng)XML元素被解析的時(shí)候,XML元素內(nèi)部的文本也會(huì)被解析:

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

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

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

解析器會(huì)認(rèn)為上面的代碼是這樣的:

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

--------------------------------------------------------------------------------

轉(zhuǎn)義字符
不合法的XML字符必須被替換為相應(yīng)的實(shí)體。

如果在XML文檔中使用類似"<" 的字符, 那么解析器將會(huì)出現(xiàn)錯(cuò)誤,因?yàn)榻馕銎鲿?huì)認(rèn)為這是一個(gè)新元素的開始。所以不應(yīng)該象下面那樣書寫代碼:

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

為了避免出現(xiàn)這種情況,必須將字符"<" 轉(zhuǎn)換成實(shí)體,象下面這樣:

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

下面是五個(gè)在XML文檔中預(yù)定義好的實(shí)體:

xml解析方式的示例分析

實(shí)體必須以符號(hào)"&"開頭,以符號(hào)";"結(jié)尾。
注意: 只有"<" 字符和"&"字符對(duì)于XML來說是嚴(yán)格禁止使用的。剩下的都是合法的,為了減少出錯(cuò),使用實(shí)體是一個(gè)好習(xí)慣。

--------------------------------------------------------------------------------

CDATA部件
在CDATA內(nèi)部的所有內(nèi)容都會(huì)被解析器忽略。

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

一個(gè) CDATA 部件以"<![CDATA[" 標(biāo)記開始,以"]]>"標(biāo)記結(jié)束:

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

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

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

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

以上是“xml解析方式的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

xml
AI