1、XML 常见应用
- xml的出现解决了程序间数据传输的问题: 用xml格式来传送数据,具有良好的可读性性,可维护性。
- xml可以做配置文件,xml文件做配置文件可以说非常的普遍。
- xml可以充当小型的数据库,xml文件做小型数据库,也是不错的选择,我们程序中可能用到一些经常要人工配置的数据,如果放在数据库中读取不合适(因为你要增加维护数据库工作),则可以考虑直接用xm来做小型数据库 【比如msn中保存用户聊天记录就是用xml文件的】,而且直接读取文件显然要比读取数据库快
2、xml 语法:
a、文档声明:<?xml version="1.0" encoding=“utf-8" standalone="yes"?>
XML声明放在XML文档的第一行
XML声明由以下几个部分组成:
version - -文档符合XML1.0规范,我们学习1.0
encoding - -文档字符编码,比如”utf-8”
standalone - -文档定义是否独立使用
standalone="yes“
standalone=“no” 默认
b、元素:
每个XML文档必须有且只有一个根元素
XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下几种书写形式,例如:
•包含标签体:<name>Lucy</name>
•不含标签体的:<country></country>, 简写为:<country/>
一个XML元素可以包含字母、数字以及其它一些可见字符,但必须遵守下面的一些规范:
- 区分大小写,例如,<P>和<p>是两个不同的标记。
- 不能以数字或"_" (下划线)开头。
- 不能以xml(或XML、或Xml 等)开头。
- 不能包含空格。
- 名称中间不能包含冒号(:)。
c、属性
<Student ID="100">
<Name>UU</Name>
</Student>
•属性值用双引号(")或单引号(')分隔(如果属性值中有',用"分隔;有",用'分隔)
•一个元素可以有多个属性,它的基本格式为:
<元素名 属性名="属性值">
•特定的属性名称在同一个元素标记中只能出现一次
•属性值不能包括<, >, &
d、注释
<!--这是一个注释-->
- 注释内容中不要出现--;
- 不要把注释放在标记中间;
- <Name <!--the name-->>TOM</Name>
- 注释不能嵌套;
- 可以在除标记以外的任何地方放注释。
e、CDATA节
有些内容可能不想让解析引擎解析执行,而是当作原始内容处理,用于把整段文本解释为纯字符数据而不是标记的情况。包含大量<、>、&或者"字符。CDATA节中的所有字符都会被当作元素字符数据的常量部分,而不是XML标记。
如:使用xml文件来传递、保存一个图片.就利用到CDATA节
语法:
<![CDATA[
。。。内容。。。
]]>
可以输入任意字符(除]]>外)
不能嵌套
<?xml version="1.0" encoding="utf-8"?> <!--这是注释--> <class> <stu id="a001"<'"> <!--这是注释--> <name>张三</name> <sex>男</sex> <age>20</age> <country/> <介绍><![CDATA[223434vdv@@#$Fdf]>d<<>>>:::}}]]></介绍> </stu> <stu> <name>Lucy</name> <sex>女</sex> <age>18</age> </stu> </class>
f、处理指令
- 处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
- 例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。 <?xml-stylesheet type="text/css" href=“my.css"?>
- 处理指令必须以“<?”作为开头,以“?>”作为结尾,XML声明语句就是最常见的一种处理指令。