本文实例为大家分享了java解析/读取xml文件的方法,供大家参考,具体内容如下
XML文件
<?xml version="1.0"?> <students> <student> <name>John</name> <grade>B</grade> <age>12</age> </student> <student> <name>Mary</name> <grade>A</grade> <age>11</age> </student> <student> <name>Simon</name> <grade>A</grade> <age>18</age> </student> </students>
Java 代码:
package net.viralpatel.java.xmlparser;    import java.io.File;  import javax.xml.parsers.DocumentBuilder;  import javax.xml.parsers.DocumentBuilderFactory;    import org.w3c.dom.Document;  import org.w3c.dom.Element;  import org.w3c.dom.Node;  import org.w3c.dom.NodeList;    public class XMLParser {      public void getAllUserNames(String fileName) {      try {        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();        DocumentBuilder db = dbf.newDocumentBuilder();        File file = new File(fileName);        if (file.exists()) {          Document doc = db.parse(file);          Element docEle = doc.getDocumentElement();            // Print root element of the document          System.out.println("Root element of the document: "             + docEle.getNodeName());            NodeList studentList = docEle.getElementsByTagName("student");            // Print total student elements in document          System.out              .println("Total students: " + studentList.getLength());            if (studentList != null && studentList.getLength() > 0) {            for (int i = 0; i < studentList.getLength(); i++) {                Node node = studentList.item(i);                if (node.getNodeType() == Node.ELEMENT_NODE) {                  System.out                    .println("=====================");                  Element e = (Element) node;                NodeList nodeList = e.getElementsByTagName("name");                System.out.println("Name: "                   + nodeList.item(0).getChildNodes().item(0)                        .getNodeValue());                  nodeList = e.getElementsByTagName("grade");                System.out.println("Grade: "                   + nodeList.item(0).getChildNodes().item(0)                        .getNodeValue());                  nodeList = e.getElementsByTagName("age");                System.out.println("Age: "                   + nodeList.item(0).getChildNodes().item(0)                        .getNodeValue());              }            }          } else {            System.exit(1);          }        }      } catch (Exception e) {        System.out.println(e);      }    }    public static void main(String[] args) {        XMLParser parser = new XMLParser();      parser.getAllUserNames("c://test.xml");    }  } 以上就是本文的全部内容,希望对大家的学习有所帮助。
新闻热点
疑难解答