XML是一种严格结构化的纯文本数据格式,用于传输存储交换数据;需有唯一根元素、大小写敏感标签、正确嵌套与闭合、引号包裹属性值,并遵循命名规范及特殊字符转义规则。

XML格式指的是一种严格、结构化的纯文本数据组织方式,核心是用自定义标签描述数据内容和层级关系,不是用来显示页面,而是为了传输、存储和交换数据。
XML必须满足的基本格式要求
一个合法的XML文档不是随便写写就能被程序正确读取的,它有几条硬性规则:
- 有且仅有一个根元素,所有其他标签都必须嵌套在它内部
- 第一行通常是声明,如,版本和编码建议明确写出
- 标签大小写敏感,
和 是两个不同元素 - 所有开始标签必须有对应结束标签(
张三 ),或写成自闭合形式()
- 标签必须正确嵌套,不允许交叉,比如 是非法的
- 属性值必须用引号包裹,单双引号均可,例如
XML标签和属性怎么用才合理
XML允许你自由定义标签名,但命名不是随意的:
- 不能以数字或标点开头,如 或 都不合法
- 不能包含空格或冒号(:),
和 都不行 - 避免用 xml 开头(大小写任意组合),这是保留前缀
- 属性适合放简单元数据,比如ID、状态、类型;复杂内容或可能扩展的信息,应改用子元素
- 例如:
比全用属性更清晰、可维护XML入门 李明
特殊字符和注释处理方法
XML里有些符号有特殊含义,直接写会报错,需要转义或包裹:
本文档主要讲述的是Android的资源与国际化设置;资源是外部文件(不含代码的文件),它被代码使用并在编译时编入应用程序。Android支持不同类型的资源文件,包括XML,PNG以及JPEG文件XML文件根据描述的不同有不同格式。这份文档描述可以支持什么样的文件,语法,以及各种格式。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
- 小于号 写成 zuojiankuohaophpcn,大于号 > 写成 youjiankuohaophpcn
- 与符号 & 必须写成 &,否则解析器会误认为是实体开头
- 双引号 " 在属性值中已用双引号包裹时,可用单引号替代;否则写成 "
- 大段含特殊字符的文本(如JS代码、SQL语句),可用 包裹,里面的内容原样保留不解析
- 注释写法和HTML一样:,不能嵌套
XML和HTML最根本的区别
很多人初学容易混淆,关键记住三点:
- HTML是预定义标签的显示语言(、 等有固定含义),XML所有标签都由你定义,没有默认语义
- HTML语法宽松(比如标签可以不闭合),XML语法极其严格,一处格式错误整个文档就无法解析
- HTML目标是“怎么展示”,XML目标是“是什么数据”,两者分工明确,常配合使用——XML传数据,HTML(或XSLT)来呈现









