XML中轉義字符及CDATA的使用

1、XML中有時會用到一些特殊字符,因此在生成XML前,需要將特殊字符進行轉義,具體轉義如下圖所示(我在&後面均加入)

待轉義的字符 轉義字符
< &lt;
> &gt;
& &amp;
&apos;
‘’ &quot;

2、但有時候,我們需要在XML中使用大量的特殊字符,若逐一轉義會比較折騰,此時使用XML中的CDATA段將會過濾相關內容,xml解析器會過濾CDATA段中的內容。
1)語法。< ! [ CDATA [忽略檢查的文本]]>
2)用法。
通常的做法:

<UserName>鄭林</UserName>

CDATA用法。用了CDATA段,段中的內容會被忽略檢查,無論是否包含敏感內容,都會被當成普通文本處理

<UserName><![CDATA[鄭林]]></UserName>

再來一個例子

<content>
	<![ CDATA [
		<script language="javascript">
			function sayhello(){    alert("hello!");		}
		</script>
	] ] >  
</content>

3、總結
CDATA段的目的就是讓xml解析器認爲內容全部爲普通文本,無需解析,這個有點類似C#中,在寫SQL語句時用到的@,相當於默認全部爲文本。例如:

            string sqlStr = @" select k.item_code, k.item_name_cn
                                  from drug_dict_data k
                                 where k.dict_type_id = :v_dict_type_id
                                   and k.audit_status = 4
                                   and k.is_inuse = 1 ";

MarkDown編輯器也會識別轉義字符,會將&lt;識別爲<。可以使用\來取消轉義

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章