【慕课笔记】2-3 应用DOM方式解析XML—使用 DOM 解析XML 文件的节点名和节点值
来源:互联网 发布:星际迷航 知乎 种族 编辑:程序博客网 时间:2024/04/29 08:11
2-3 使用 DOM 解析XML 文件的节点名和节点值
package com.imooc.xml;import java.io.IOException;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.NamedNodeMap;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import org.xml.sax.SAXException;public class Test {public static void main(String[] args) {DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();try {DocumentBuilder db=dbf.newDocumentBuilder();Document document=db.parse("haha.xml");//获取所有book结点的结合NodeList nodelist=document.getElementsByTagName("book");System.out.println("共有"+nodelist.getLength()+"本书");for(int i=0;i<nodelist.getLength();i++){//通过item(i)方法 获取一个book结点 nodelist索引值从0开始 Node book=nodelist.item(i);//获取book结点的所有属性NamedNodeMap attrs=book.getAttributes();System.out.println("第"+(i+1)+"本书有"+attrs.getLength()+"个属性");//遍历book的属性for(int j=0;j<attrs.getLength();j++){//通过item(index)方法获取book结点的每个属性Node attr=attrs.item(j);//获取属性名System.out.println(attr.getNodeName());//获取属性值System.out.println(attr.getNodeValue());}//将book结点进行强制类型转换,转换成Element类型//Element book=(Element) nodelist.item(i);//String attrValue=book.getAttribute("id");//System.out.println("id的值为"+attrValue);//解析book结点的子节点NodeList childnodes=book.getChildNodes();//遍历childnodes获取每个结点名和结点值System.out.println("第"+(i+1)+"本书共有"+childnodes.getLength());//遍历childnodes获取每个结点for(int k=0;k<childnodes.getLength();k++){//区分出text类型的node以及element类型的nodeif(childnodes.item(k).getNodeType()==Node.ELEMENT_NODE){System.out.print("第"+(k+1)+"个结点的节点名:"+childnodes.item(k).getNodeName());//System.out.println("--节点值为:"+childnodes.item(k).getFirstChild().getNodeValue());System.out.println("--节点值为:"+childnodes.item(k).getTextContent());//所有值}}}}catch (SAXException e) {// TODO Auto-generated catch blocke.printStackTrace();}catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}catch (ParserConfigurationException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
0 0
- 【慕课笔记】2-3 应用DOM方式解析XML—使用 DOM 解析XML 文件的节点名和节点值
- 【慕课笔记】2-2 应用DOM方式解析XML—使用DOM解析XML文件的属性名和属性值
- 【慕课笔记】3-3 应用SAX方式解析XML—使用SAX解析XML文件的节点名和节点间文本
- 使用DOM解析XML的文件属性名和属性值、节点名和节点值
- Java使用DOM解析XML的文件属性名和属性值、节点名和节点值
- 【慕课笔记】3-2 应用SAX方式解析XML—使用SAX解析XML文件的节点属性
- 使用DOM解析XML节点
- 【慕课笔记】4-3 应用DOM4J及JDOM方式解析XML— 应用JDOM解析子节点的名和值
- 【慕课笔记】2-1 应用DOM方式解析XML—如何进行 XML 文件解析前的准备工作
- 使用Dom解析xml文件的属性节点
- 使用DOM生成XML的文件属性名和属性值、节点名和节点值
- XML的两种解析方式逐行解析(SAX解析)节点解析(DOM解析)
- Java 应用DOM方式解析XML文件
- 【慕课笔记】3-1 应用SAX方式解析XML—使用SAX解析XML文件的开始和结束
- 应用DOM方式解析XML
- DOM方式解析XML文件
- 【慕课笔记】4-8 应用DOM4J及JDOM方式解析XML—应用DOM4J解析子节点的信息
- 使用DOM解析xml文件的属性和值
- 爬虫(Spider),反爬虫(Anti-Spider)
- Windows服务编写综述
- 无唯一性字段情况下,双表关联更新数据方案
- 快速幂运算
- css float
- 【慕课笔记】2-3 应用DOM方式解析XML—使用 DOM 解析XML 文件的节点名和节点值
- 对理想团队模式的设想以及对软件流程的理解。
- *hdu2473 (并查集的删除)
- 原来Visual Assistant 支持 VC6的变量名等重命名
- javaWeb工作原理
- 为NetBeans配置OpenCV
- Java_reflect
- 事务模板接入(spring的编程式事务)
- stderr和stdout详细解说