1、xml的简介(了解)
HTML
- 中文名称:超文本标记语言
- 优点:简单
- 缺点:不可扩展
- 作用:显示
XML
eXtensible Markup language:可扩展的标记语言 解决HTML不可扩展的问题
作用:保存或传输数据,不是用来显示数据的
3、xml的应用:主要功能,为了存储数据
* 不同的系统之间传输数据
*qq之间数据的传输
* 用来表示生活中有关系的数据
经常用在文件配置,比如现在连接数据库 肯定知道数据库的用户名和密码,数据名称 。如果修改数据库的信息,不需要修改源代码,只要修改配置文件就可以了
4、xml的语法
(1)xml的文档声明(*):也就是写在xml文件开头的第一句代码
<?xml version="1.0" encoding="utf-8"?>
【解析】
1)文档声明必须写在 第一行第一列
2) 属性:
- version:xml的版本 1.0(使用) 1.1
- encoding:xml编码 gbk utf-8 iso8859-1(不包含中文)
这里写代码片
- standalone:是否需要依赖其他文件 yes/no,这个还是比较少出现的
(2)出现乱码的问题:这种情况是比较少出现,但是如果出现了,你要知道怎么去解决?
分析过程:首先我们在写代码时候,encoding = “utf-8”,而保存文件的时候存为ANSI,进行了gbk的编码,打开的时候用UTF-8进行了解码,所以出现了乱码,解决方法:就是保存文件的时候要保存成UTF-8的编码格式,看图
所以出现了乱码
(3)xml的元素(标签)定义(*)
** 标签定义
** 标签定义有开始必须要有结束:<person></person>
** 标签没有内容,可以在标签内结束 ; <aa/>
** 标签可以嵌套,必须要合理嵌套
*** 合理嵌套 <aa><bb></bb></aa>
*** 不合理嵌套 <aa><bb></aa></bb>: 这种方式是不正确的
** 一个xml中,只能有一个根标签,其他标签都是这个标签下面的标签
** 在xml中把空格和换行都当成内容来解析,
**** 下面这两段代码含义是不一样的
* <aa>1111111</aa>
* <aa>
11111111111
</aa>
** xml标签可以是中文
(4)xml的元素名称规则(*)
(1)xml代码区分大小写
<p> <P>:这两个标签是不一样的
(2)xml的标签不能以数字和下划线(_)开头
<2a> <_aa>: 这样是不正确的
(3)xml的标签不能以xml、XML、Xml等开头
<xmla> <XmlB> <XMLC>: 这些都是不正确的
(4)xml的标签不能包含空格和冒号
<a b> <b:c> : 这些是不正确的
<?xml version="1.0" encoding="utf-8"?>
<person>
<name>张三</name>
<age>20</age>
</person>
(5)xml中属性的定义(*)
** 属性定义的要求
(1)一个标签上可以有多个属性
<person id1="aaa" id2="bbb"></person>
(2)属性名称不能相同
<person id1="aaa" id1="bbb"></person>:这个是不正确,不能有两个id1
(3)属性名称和属性值之间使用= ,属性值使用引号包起来 (可以是单引号,也可以是双引号 )
(4)xml属性的名称规范和元素的名称规范一致
<?xml version="1.0" encoding="utf-8"?>
<person>
<name id = "name">zhangsan</name>
<age id = "age">20</age>
<a id= "a">1111</a>
</person>
(6)xml中的注释(*)
** 注释也不能放到第一行,第一行第一列必须放文档声明
//写法
<!-- xml的注释 -->
(7)xml中的特殊字符(*)
* 如果想要在xml中现在 a<b ,不能正常显示,因为把<当做标签
* 如果就想要显示,需要对特殊字符 < 进行转义
** < <
> >
(8)CDATA区(了解)
* 可以解决多个字符都需要转义的操作 if(a<b && b<c && d>f) {}
* 把这些内容放到CDATA区里面,不需要转义了
** 写法
<![CDATA[ 内容 ]]>
- 代码
<![CDATA[ <b>if(a<b && b<c && d>f) {}</b> ]]>
** 把特殊字符,当做文本内容,而不是标签
<?xml version="1.0" encoding="utf-8"?>
<person>
<name>张三</name>
<age>20</age>
<!-- <sex>nv</sex>-->
<a>a<b</a>
<![CDATA[ <b>if(a<b && b<c && d>f) {}</b> ]]>
</person>
(8)PI指令(处理指令)(了解)
设置样式,只能对英文标签名称起作用,对于中文的标签名称不起作用的。
//代码
<?xml-stylesheet type="text/css" href="css的路径"?>
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="1.css"?>
<person>
<name>zhangsanzhangsanzhangsanzhangsan</name>
<age>20202020202020202020</age>
</person>
1.css
name {
background-color: red;
}
age {
background-color:green;
}
结果:截图
但是,一般不会这样做,要搞清楚的是!!xml用来保存数据,而不是来修饰显示数据的
下一篇:介绍一下,写xml的几个工具,其实xml很少写的,看得懂就可以,重要的是java或者php对xml文件的操作,这是为了以后做铺垫。了解一下好