写了个request2XML的方法,每当数据中有'<'、'&'符号时,封装的XML就无法解析。发现了XML里的CDATA属性,问题迎刃而解!在XML文档中的所有文本都会被解析器解析。 只有在CDATA部件之内的文本会被解析器忽略。----------------------------------------------------- 解析数据 XML 解析器通常情况下会处理XML文档中的所有文本。 当XML元素被解析的时候,XML元素内部的文本也会被解析: <message>This text is also parsed</message> XML解析器这样做的原因是XML元素内部可能还包含了别的元素,象下面的例子,name元素内部包含了first和last两个元素: <name><first>Bill</first><last>Gates</last></name> 解析器会认为上面的代码是这样的: <name> <first>Bill</first> <last>Gates</last> </name> -----------------------------------------------------

转义字符不合法的XML字符必须被替换为相应的实体。 如果在XML文档中使用类似"<" 的字符, 那么解析器将会出现错误,因为解析器会认为这是一个新元素的开始。所以不应该象下面那样书写代码: <message>if salary < 1000 then</message> 为了避免出现这种情况,必须将字符"<" 转换成实体,象下面这样: <message>if salary &lt; 1000 then</message> 下面是五个在XML文档中预定义好的实体:

&lt; < 小于号
&gt; > 大于号
&amp; & 和
&apos; ' 单引号
&quot; " 双引号

实体必须以符号"&"开头,以符号";"结尾。 注意: 只有"<"
字符和"&"字符对于XML来说是严格禁止使用的。剩下的都是合法的,为了减少出错,使用实体是一个好习惯。-----------------------------------------------------

CDATA部件在CDATA内部的所有内容都会被解析器忽略。如果文本包含了很多的"<"字符和"&"字符——就象程序代码一样,那么最好把他们都放到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 转义特殊字符的更多相关文章

  1. XML转义特殊字符

    正常来说,只有"<" 字符和"&"字符对于XML来说是严格禁止使用的. 需要注意的是: a. 转义序列各字符间不能有空格: b. 转义序列必须以& ...

  2. Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理

    Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理 >>>>>>>>>>>>>>>>& ...

  3. XML中特殊字符转义

    /// <summary> /// 特殊字符转义 /// </summary> /// <param name="xml"></param ...

  4. XML的特殊字符处理

    XML中共有5个特殊的字符,分别是:&<>“’.如果配置文件中的注入值包括这些特殊字符,就需要进行特别处理.有两种解决方法:其一,采用本例中的<![CDATA[ ]]> ...

  5. XML的特殊字符

    XML中共有5个特殊的字符,分别是:&<>“’.如果配置文件中的注入值包括这些特殊字符,就需要进行特别处理.有两种解决方法: 其一,采用本例中的<![CDATA[ ]]> ...

  6. 如何在XML 加入特殊字符内容 如< >

    XML 文件本身包含了一些预定义的保留字符 如< 标记元素的开始符号等 如果要在属性或者元素的值里面包含类似的这些特殊字符 应该如何处理呢 ? 这时候要用到  <![CDATA[] 这个标 ...

  7. xml转义符

    今天在看项目的UrlRewriteFilter(动态url静态化,有利于搜索引擎搜索)的配置文件urlrewrite.xml时,看到了“&”字符,查询之后才知道xml文件中的转义比html中的 ...

  8. JavaWeb——XML转义符字

    被<![CDATA[]]>这个标记所包含的内容将表示为纯文本,比如<![CDATA[<]]>表示文本内容“<”.  此标记用于xml文档中,我们先来看看使用转义符的 ...

  9. XML 解析 & 特殊字符报错

    在xml文件中,有一些符号是具有特殊意义的,如果直接使用会导致xml解析报错,为了避免错误,我们需要将特殊的字符使用其对应的转义实体进行操作.这些字符如下 <  ==  < >  = ...

随机推荐

  1. jar 启动关闭

    1.后台启动 startTest.sh #设置工程路径project_path=/root/testcd $project_path#nohup后台启动,输出日志到test.lognohup java ...

  2. PIE SDK均值滤波

    1.算法功能简介 均值滤波是最常用的线性低通滤波,它均等地对待邻域中的每个像素.对于每个像素,取邻域像素值的平均作为该像素的新值.均值滤波算法简单,计算速度快,对高斯噪声比较有效.从频率域的角度看,相 ...

  3. 设计模式学习总结(五)创建者模式(Builder)

    创建者模式,主要针对某些产品有类似的生产步骤,且有需要有先后顺序的进行各个部件的生成. 一.示例展示: 通过学习及总结,以下是我完成的创建者模式的示例: 1.创建产品类:Laptop public c ...

  4. TeamCity 持续集成工具

    https://www.jetbrains.com/teamcity/ null

  5. nginx 模块介绍

    nginx模块在编译文件下的odjs目录下 cat 查看ngx_modules.c文件 可以看到一些基本extern模块 常用标准模块 1. 性能相关配置 worker_processes numbe ...

  6. webservice 介绍

    Web service 即web服务,它是一种跨编程语言和跨操作系统平台的远程调用技术即跨平台远程调用技术. l 采用标准SOAP(Simple Object Access Protocol)  协议 ...

  7. GridView, ListView 区别

    ListView, GridView部分的类层次结构 AbsListView的xml属性 android:listSelector 当前item高亮时,显示的drawable android:draw ...

  8. [Matlab] awgn

    Y = awgn(X,SNR,SIGPOWER) when SIGPOWER is numeric, it represents the signal power in dBW. When SIGPO ...

  9. rpm重装python和yum

    前些天升级的python, yum就不能用了, 提示 "No module named yum", 然后搜索了一下, 说要重装python和yum, 也没多想, 就按照那些教程去做 ...

  10. Cannot initialize Cluster. Please check your configuration for mapreduce.framework.name

    添加一下依赖 <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop- ...