本文实例为大家分享了java解析/读取xml文件的方法,供大家参考,具体内容如下
XML文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<? 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 代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
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" ); } } |
以上就是本文的全部内容,希望对大家的学习有所帮助。