XMLにおけるエスケープ文字およびCDATAの使用

3226 ワード

1、XMLでは特殊文字が使用される場合がありますので、XMLを生成する前に、特殊文字をエスケープする必要があります.具体的なエスケープは下図のように(私は&後に追加します)
エスケープ文字
エスケープ文字
<
<
>
>
&
&

'
‘’
"
2、ただし、XMLでは特殊文字を大量に使用する必要がある場合があります.エスケープすると振り回される場合があります.この場合、XMLのCDATAセグメントを使用すると関連コンテンツがフィルタされ、xml解析器ではCDATAセグメントのコンテンツがフィルタされます.1)構文.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エディタでもエスケープ文字が認識され、<が