读书人

xml 相关有关问题

发布时间: 2012-08-27 21:21:57 作者: rapoo

xml 相关问题
一、xml 特殊字符,过滤方法?

① 方法Ⅰ

五个在XML文档中预定义好的实体:

<

<?

小于号

>

>?

大于号

&

&

'

'

单引号

"

"

双引号

过滤方法:

protected string XmlFilter(string xml)        {            xml = xml.Trim();            if (string.IsNullOrEmpty(xml))                return string.Empty;            xml = xml.Replace("<", "<");            xml = xml.Replace(">", ">");            xml = xml.Replace("&", "&");            xml = xml.Replace("\"", """);            xml = xml.Replace("'", "'");            return xml;        }
?

② 方法Ⅱ

每当数据中有'<'、'&'符号时,封装的XML就无法解析。发现了XML里的CDATA属性,问题迎刃而解!

在XML文档中的所有文本都会被解析器解析。

只有在CDATA部件之内的文本会被解析器忽略。

?

一个 CDATA 部件以"<![CDATA[" 标记开始,以"]]>"标记结束:

<script><![CDATA[function matchwo(a,b){if (a < b && a < 0) then{return 1}else{return 0}}]]></script>
?

?

在前面的例子中,所有在CDATA部件之间的文本都会被解析器忽略。

CDATA注意事项:
CDATA部件之间不能再包含CDATA部件(不能嵌套)。如果CDATA部件包含了字符"]]>" 或者"<![CDATA[" ,将很有可能出错哦。

同样要注意在字符串"]]>"之间没有空格或者换行符。

?

?

?

?

?

?

?

?

?

?

?

?

?

读书人网 >XML SOAP

热点推荐