xml的解析方式(一)DOM 解析
程序员文章站
2022-05-28 23:45:22
...
DOM解析
*首先我们看看API中的包
*
javax.xml.parsers
的类 DocumentBuilderFactory
学习工厂模式 ,它也是类似于 单例模式 构造方法需要用它方法里的
.newInstance()方法来构建一个工厂
即DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
然后通过它的方法
.newDocumentBuilder()
new一个DocumentBuilder类 为了使用它的parse方法来解析xml文档
DocumentBuilder builder = factory.newDocumentBuilder();
document = builder.parse(file);
这里的file参数注意了 根据API 知道我们可以
String uri 传一个路径 也可以传一个File f
这里传文件实例一般不会出现异常
传路径的话 切记路径不能包含中文 这样会出现一片红的异常
java.net.MalformedURLException: unknown protocol: c
上面的返回值是一个Document
接下来我们就可以用document 的方法 来提取
xml中的元素了
DOM方法是将整个文件都读到缓存中解析 所以不适合大文件的解析
.getElementsByTagName(标签名)
入参为你的标签名 然后返回给你一个NodeList
可以用NodeList里面的两个方法来遍历里面存的值
.getLength()
把学校的节点集合循环成单个的节点集 for循环内用
item(int index)
返回的Node我们先叫它node
用item方法 返回节点列表中处于指定索引号的节点
if(node.getNodeType() == Node.ELEMENT_NODE)
判断节点是否是element 是得话强转 (节点中包含太多的东西)
Element XXXElement=(Element)node; //强转
这里强转的XXXElement 元素 我们用它的方法
.getAttribute( 属性名);
这样就可以获得你所需要的二级节点的属性了
这样DOM解析基本结束了
上一篇: 【XML】DOM解析XML
下一篇: anaconda配置清华源以及常用操作
推荐阅读