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;识别为<。可以使用\来取消转义

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值