XML——CDATA
XML 解析器通常会解析 XML 文档中所有的文本。
当某个 XML 元素被解析时,其标签之间的文本也会被解析:
<message>此文本也会被解析</message>
非法的XML字符必须被替换为实体引用(entity reference)
假如您在 XML 文档中放置了一个类似 "<" 字符,那么这个文档会产生一个错误,这是因为解析器会把它解释为新元素的开始。因此你不能这样写:
<message>if salary < 1000 then</message>
为了避免此类错误,需要把字符 "<" 替换为实体引用,就像这样:
<message>if salary < 1000 then</message>
在XML中有5个预定义的实体引用:
< | < | 小于 |
> | > | 大于 |
& | & | 和号 |
' | ' | 省略号 |
" | " | 引号 |
注释:严格地讲,在 XML 中仅有字符 "<"和"&" 是非法的。省略号、引号和大于号是合法的,但是把它们替换为实体引用是个好的习惯。
CDATA
术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)。
在 XML 元素中,"<" 和 "&" 是非法的。
"<" 会产生错误,因为解析器会把该字符解释为新元素的开始。
"&" 也会产生错误,因为解析器会把该字符解释为字符实体的开始。
某些文本,比如 JavaScript 代码,包含大量 "<" 或 "&" 字符。为了避免错误,可以将脚本代码定义为 CDATA。
CDATA 部分中的所有内容都会被解析器忽略。
CDATA 部分由 "<![CDATA[" 开始,由 "]]>" 结束:
<![CDATA[<]]> #{endTime}</if>
在上面的例子中,解析器会忽略 CDATA 部分中的所有内容。
注意:
CDATA 部分不能包含字符串 "]]>"。也不允许嵌套的 CDATA 部分。
标记 CDATA 部分结尾的 "]]>" 不能包含空格或折行。
XML——CDATA相关推荐
- XML CDATA的作用
操作XML文件时,如果允许用户输入内容,例如∶"< ".">"."/".""等,当生成XML时,会破坏了XM ...
- oracle xml中cdata,XML CDATA的作用
XML CDATA的作用 更新时间:2009年09月01日 00:52:36 作者: 当你用FLASH和xml结合做网站应用程序时,例如你做在我研究游戏排行榜中,当让人自由输入姓名时,人们可以输入 ...
- java cdata xml 解析_解析XML CDATA块
看来 标签中的CDATA内容将在 parser:foundCharacters 中的多个回调中逐步返回 . 在符合NSXMLParserDelegate的类中,尝试通过将CDATA附加到NSMutab ...
- XML CDATA概述
XML 文档中的所有文本均会被解析器解析.只有 CDATA 区段中的文本会被解析器忽略. PCDATA - 被解析的字符数据 XML 解析器通常会解析 XML 文档中所有的文本. 当某个 XML 元素 ...
- php xml cdata 解析,![CDATA[文本内容]]代表的意思
mybatis 写sql语句的xml中sql语句被包裹,就是因为里面可能有等符号,xml解析器格式化的时候无法正确解析,所以用这个包起来. CDATA 指的是不由 XML 解析器进行解析的文本数据.所 ...
- php 解析xml cdata,PHP SimpleXML 对有CDATA的xml解析问题 | 瑕疵学院 – 学习无瑕疵,成就有保障...
$xml_data = file_get_contents('a.xml'); $simplexml = simplexml_load_string($xml_data); print_r($simp ...
- java 生成xml cdata_XML CDATA是什么?
All text in an XML document will be parsed by the parser. XML文档中的所有文本都会被解析器解析. Only text inside a CD ...
- DOM4J_Xpath的XML操作总结
2019独角兽企业重金招聘Python工程师标准>>> 1.DOM4J简介 DOM4J是 dom4j.org 出品的一个开源 XML 解析包.DOM4J应用于 Java 平台,采用了 ...
- dom4j ---最好的xml解决方案?
DOM4J是dom4j.org出品的一个开源XML解析包,它的网站中这样定义: Dom4j is an easy to use, open source library for working wit ...
最新文章
- asp.net网站图片防盗链机制示例代码
- boost::mpl模块实现insert相关的测试程序
- linux操作系统adsl 上网设置,Linux操作系统下ADSL拨号上网详细步骤
- Java == equal
- [习题]如何触发 GridView 身体里面的「子控件」的事件 (ASP.NET案例精编 / 清华大学出版社 Ch.10/11两章的补充)...
- 清华硕士分享思维导图:机器学习所需的数学基础
- 开源数字媒体资产管理系统:Razuna
- python毕业设计作品基于django框架 校园二手书籍交易系统毕设成品(6)开题答辩PPT
- 只做正确的事情,并持续输出价值
- Java从遗忘到入门——Day06
- VulnHub靶场-Tiki
- Win32基础学习笔记
- MPC5744P-UART(LIN)模块
- python统计不同字符的个数
- 瑞科生物通过聆讯:9个月亏损超5亿 君联与红杉是股东
- DNS工作原理及其过程
- ps -aux排序--按内存使用排序或按cpu使用排序
- 计算机在幼儿园课程中的教学,计算机技术在幼儿教学中的运用策略
- iOS开发——网络连接判断
- RTMP协议推流,助力视频数据轻松上云
热门文章
- [SQL Server 2005 至 SP3] 问题解决: 发布'xxx'的初始快照尚不可用
- Tinghui Zhou
- 配置eslint+prettier报错Error: Cannot read config file: /Users/qiandingwei/Documents/projects/creams-main
- ISCSI 简单介绍
- 天眼查查询企业工商资料
- XR-FRAME 开始
- 小马哥java_小马哥 Java 微服务实践 - Spring Cloud 系列
- html5打包在ios上发布,第二篇 HTML5打包发布IOS APP之苹果开发者账号申请流程
- 蛋鸡养殖智能环控系统方案
- 【elasticsearch】 es状态查看节点分片信息:/_cat/shards