首页 > 其他 > 详细

XML

时间:2019-03-11 23:05:47      阅读:158      评论:0      收藏:0      [点我收藏+]
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.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class DocDemo {
    private Document document = null;
    public void getDocument() {
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        try {
            DocumentBuilder builder = factory.newDocumentBuilder();
            document = builder.parse("收藏信息.xml");
        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    
    
    public void show() {
        //找到所有的Brand
        NodeList nodeList = document.getElementsByTagName("Brand");
        //遍历每一个Brand
        for(int i = 0;i<nodeList.getLength();i++) {
            Node node = nodeList.item(i);
            //转成元素类型
            Element eleBrand = (Element)node;
            System.out.println("品牌"+eleBrand.getAttribute("name"));
            //找到当前Brand的所有子节点
            NodeList typeList = eleBrand.getChildNodes();
            //遍历每一个子节点
            for(int j = 0;j<typeList.getLength();j++) {
                Node typeNode = typeList.item(j);
                //因为Brand的子节点中可能有非元素点,比如属性节点、文本节点
                //所以要先判断该子节点是否是一个元素节点,如果是才能进行强转
                //typeNode.getNodeType()这个方法时获取当前节点的字节类型————元素节点、属性节点、文本节点
                if(typeNode.getNodeType() == Node.ELEMENT_NODE) {
                    //转换成元素对象
                    Element eleType = (Element)typeNode;
                    System.out.println("\t型号:"+eleType.getAttribute("name"));
                }
                
            }
        }
    }
    public static void main(String[] args) {
        DocDemo d = new DocDemo();
        d.getDocument();
        d.show();
    }
}

技术分享图片

 

XML

原文:https://www.cnblogs.com/zxbaoer/p/10513715.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!