1.XML(EXtensible Markup Language),可扩展标记语言
特点:
1)XML与操作系统、编程语言的开发平台无关
2)实现不同系统之间的数据交换
作用:
1)数据交互
2)配置应用程序和网站
2.XML标签
< 元素名 属性名 =“ 属性值 ”> 元素内容 </ 元素名 >
注意:
1)属性值为双标签
2)一个元素可以有多个属性,可多层嵌套
3)属性值不能写<、“、&
4)相比与HTML标签,XML标签自己定义,符合定义规则皆自由
5)XML大小写敏感,同级标签以缩进对齐
6)元素名称不能以数字或者标点符号开始,元素名称中不能含空格
3. Java代码实现
首先你要现有一个XML文件
实现步骤 DOM解析XML文件步骤
1)创建解析器工厂对象DocumentBuilderFactory,此为抽象类,但其有个方法创建对象
2)通过解析器工厂对象创建解析器对象
3)通过解析器对象调用方法将XML文件转换为Document对象
4)通过Document对象去操作XML文件里的数据
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import javax.imageio.stream.FileImageInputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.xml.sax.SAXException;
public class XmlDocumentDemo01 {
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
//第一步:获取解析器工厂对象
DocumentBuilderFactory dbf =DocumentBuilderFactory.newInstance();
try {
//第二步:通过解析器工厂对象dbf创建解析器对象
DocumentBuilder db=dbf.newDocumentBuilder();
//第三步:通过解析器对象调用方法将XML文件转换为Document对象
Document document =db.parse(new File("D:\\MyEclipse-demo\\Day032之XML\\src\\cn\\baqn\\teacher02\\收藏信息.xml"));
System.out.println(document);
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}}
4.常用接口介绍
DOM解析包:org.w3c.dom
常用接口 | 常用方法 | 说明 |
Document:表示整个 XML 文档 | NodeList getElementsByTagName(String Tag) | 按文档顺序返回文档中指定标记名称的所有元素集合 |
Element createElement(String tagName) | 创建指定标记名称的元素 | |
Node:该文档树中的单个节点 | NodeList getChildNodes() | 获取该元素的所有子节点,返回节点集合 |
Element:XML 文档中的一个元素 | String getTagName() | 获取元素名称 |