在使用xml文件時(shí),有時(shí)候內(nèi)容中會(huì)含有一些特殊字符,導(dǎo)致在解析xml的時(shí)候出現(xiàn)異常。
解析數(shù)據(jù)
XML 解析器通常情況下會(huì)處理XML文檔中的所有文本。
當(dāng)XML元素被解析的時(shí)候,XML元素內(nèi)部的文本也會(huì)被解析。
如果文本中含有“<”,“>”等特殊的字符時(shí)將會(huì)出現(xiàn)異常。(當(dāng)含有“=”時(shí),DataSet.ReadXml也會(huì)出現(xiàn)異常)。
一種解決方法是:用實(shí)體&來(lái)表示。
下面是五個(gè)在XML文檔中預(yù)定義好的實(shí)體:
< | < | 小于號(hào) |
> | > | 大于號(hào) |
& | & | 和 |
' | ' | 單引號(hào) |
" | " | 雙引號(hào) |
另一種解決方法是使用CDATA部件:
一個(gè) CDATA 部件以"<![CDATA[" 標(biāo)記開始,以"]]>"標(biāo)記結(jié)束
所有在CDATA部件之間的文本都會(huì)被解析器忽略。
CDATA注意事項(xiàng):
CDATA部件之間不能再包含CDATA部件(不能嵌套)。如果CDATA部件包含了字符"]]>" 或者"<![CDATA[" ,將很有可能出錯(cuò)。
同樣要注意在字符串"]]>"之間沒有空格或者換行符。
</script>