![CDATA[]] XML中的這個符號,表示什么意思?

![CDATA[]]和轉(zhuǎn)義字符

被這個標記所包含的內(nèi)容將表示為純文本,比如表示文本內(nèi)容“<”。?

  此標記用于xml文檔中,我們先來看看使用轉(zhuǎn)義符的情況。我們知道,在xml中,”<”、”>”、”&”等字符是不能直接存入的,否則xml語法檢查時會報錯,如果想在xml中使用這些符號,必須將其轉(zhuǎn)義為實體,如”<”、”>”、”&”,這樣才能保存進xml文檔。?

  在使用程序讀取的時候,解析器會自動將這些實體轉(zhuǎn)換回”<”、”>”、”&”。舉個例子:?

   age < 30 ?

  上面這種寫法會報錯,應(yīng)該這樣寫:?

   age < 30 ?

值得注意的是:?

(1)轉(zhuǎn)義序列字符之間不能有空格;?

(2) 轉(zhuǎn)義序列必須以”;”結(jié)束;?

(3) 單獨出現(xiàn)的”&”不會被認為是轉(zhuǎn)義的開始;?

(4) 區(qū)分大小寫。?


在XML中,需要轉(zhuǎn)義的字符有:?

  (1)&   &?

  (2)<   <?

  (3)>   >?

  (4)"   "?

  (5)'   '?

但是嚴格來說,在XML中只有”<”和”&”是非法的,其它三個都是可以合法存在的,但是,把它們都進行轉(zhuǎn)義是一個好的習(xí)慣。?

  不管怎么樣,轉(zhuǎn)義前的字符也好,轉(zhuǎn)義后的字符也好,都會被xml解析器解析,為了方便起見,使用來包含不被xml解析器解析的內(nèi)容。但要注意的是:?

  (1) 此部分不能再包含”]]>”;?

(2) 不允許嵌套使用;?

  (3)”]]>”這部分不能包含空格或者換行。?

  最后,說說和xml轉(zhuǎn)移字符的關(guān)系,它們兩個看起來是不是感覺功能重復(fù)了??

是的,它們的功能就是一樣的,只是應(yīng)用場景和需求有些不同:?

  (1)不能適用所有情況,轉(zhuǎn)義字符可以;?

  (2) 對于短字符串寫起來啰嗦,對于長字符串轉(zhuǎn)義字符寫起來可讀性差;?

(3)?表示xml解析器忽略解析,所以更快。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容