import javax.xml.parsers.*; import org.w3c.dom.*; class PapresTest{ public static void main(String[]args)throws Exception{ readNode(); } /* 思路: 解析xml文件,需要DocumentBuilder类中的parse()方法。 因为该方法不是静态的,所以需要实例化DocumentBuilder类的对象才能调用该方法,故需要new 一个对象。 由因为DocumentBuilder类是抽象的,只能通过DocumentBuilderFactory.newDocumentBuilder() 方法获取对象。 故需要有DocumentBuilderFactory对象,又因为DocumentBuilderFactory类也是抽象的,获取该类对象只能通过 newInstance(),该方法是静态的,类即可调用。 */ //解析所有节点 static void readNode() throws Exception{ //通过解析器工厂类中的静态函数newInstance()获取解析器工厂实例 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); //通过解析器工厂中的newDocumentBuilder()获取解析器对象 DocumentBuilder document1 = dbf.newDocumentBuilder(); //通过解析器对象中的parse()函数解析xml文件 Document d = document1.parse("src/MyXml.xml"); //获取xml文件中的所有元素 NodeList list = d.getElementsByTagName("name"); //遍历集合 for(int i =0 ;i<list.getLength();i++){ Node n = list.item(i); //获取节点内容 System.out.println(n.getTextContent()); } } }
本文出自 “司马囧” 博客,谢绝转载!
原文地址:http://9274590.blog.51cto.com/9264590/1752340