第六天
1. xml(Extensible Markup Language)文件:可扩展标记语言
1、 html就是xml文件的其中一种应用。
2、 xml是w3c组织发布的,目前遵循w3c组织2000年发布的XML1.0规范; 3、 XML的部分应用场景:
1.1、 自定义标记; 1.2、 异构系统整合; 1.3、 作为配置文件; 1.4、 存储数据;
4、 HTML与XML语言的区别:
1.1、 HTML标签是固定的,只能写指定范围内的标签 ;
1.2、 XML的标签是可以随意自己起名字的,自定义的标签需要自己写程序去解释; 5、 XML文件的作用:
1.1、 描述一些有关系的数据; 1.2、 用于不同系统上的数据交互; 6、 编写XML文件的规范:
XML文件的组成部分: 1.1、 文档声明:
注意:文档声明部分一定要在一个XML文件的开头; 格式: version:XML文件的版本1.0; encoding:XML文件的使用编码,这里的编码一定要与保存文件的编码一致; ***文档声明不是必需的,但是强烈建议写上,如果有文档,则一定要写在文档开始位置;
***声明最多的可以包含三个名称-值对:version,encoding;
1.2、 元素:
? XML文件一定要有一个根节点; ? XML标签可以划分成两种类别,一种是有开始与结束标签的,另外一种是
开始与结束标签都是在一个标签体内; 第一种:
? 标签名不能以数字开头和XML开头; ? 标签名中间不能出现“:”号; ? 标签名中间不能出现空格;
? 注意:对于XML标签中出现的所有空格和换行,XML解释程序都会当作
标签内容进行处理;
1.3、 属性:
属性都是位于开始标签内部的,属性值需要用“”引用起来;
1.4、 注释: 1.5、 特殊字符:
有些符号在XML文件上是有着特殊意义的,这时候需要原样输出特殊字符的时候需要使用实体字符,> > < <
7、 解释XML文件的框架:dom4j (dom文档对象模型 for java);
8、 XML元素是互相关联的,XML元素之间是父元素和子元素或同级元素的关系; 2. 读取XML文件步骤: package cn.itcast.read; import java.io.File; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; /** 读取xml文件的步骤: 1. 创建xml文件解释器对象(SaxReader)。 2. 读取xml文件返回一个document的对象 3. 从doucmnet对象中获取根节点的信息。 */ public class ReaderTest1 { } public static void main(String[] args) throws Exception { } //1. 创建xml文件解释器 SAXReader saxReader = new SAXReader(); //读取xml文件返回一个document的对象。 File file = new File(\); Document document = saxReader.read(file); //从document获取xml文件根节点 Element rootEle = document.getRootElement(); System.out.println(\根节点的名字:\+rootEle.getName()); 3. 完美示例: package com.bobo.text; import java.io.File; import java.util.Iterator; import java.util.List; import org.dom4j.Attribute; import org.dom4j.Comment; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.Node; import org.dom4j.io.SAXReader; /** * 读取xml文件内容 * @author 波波 * @version 2014-09-20 */ public class ReaderTest { public static void main(String[] args) throws DocumentException { //创建xml文件解释器 SAXReader sax=new SAXReader(); //获取document对象 Document doc=sax.read(new File(\)); //从doc获取xml文件根节点 Element rootEle=doc.getRootElement(); System.out.println(\根节点名字:\+rootEle.getName()); //通过根节点获取下面的所有标签子节点 List

