Java如何一行一行的遍历xml
时间: 2023-09-11 07:10:11 浏览: 78
你可以使用Java中的DOM解析器来遍历XML文件中的每一行。下面是一个简单的示例代码:
```java
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
import org.w3c.dom.Element;
import java.io.File;
public class ReadXMLFile {
public static void main(String argv[]) {
try {
File inputFile = new File("input.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(inputFile);
doc.getDocumentElement().normalize();
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName(doc.getDocumentElement().getChildNodes().item(0).getNodeName());
System.out.println("-----------------------");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
System.out.println("\nCurrent Element :" + nNode.getNodeName());
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
System.out.println("Name : " + eElement.getElementsByTagName("name").item(0).getTextContent());
System.out.println("Age : " + eElement.getElementsByTagName("age").item(0).getTextContent());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上述代码中,我们首先创建了一个File对象来表示XML文件,然后使用DocumentBuilderFactory和DocumentBuilder类来创建DOM解析器。接下来,我们使用parse()方法将XML文件加载到DOM中,并通过normalize()方法规范化DOM树。然后,我们使用getElementsByTagName()方法来获取XML文件中的元素列表,并使用for循环遍历每个元素,并打印出它的内容。如果您需要遍历XML文件中的每一行,请将getElementsByTagName()方法的参数设置为"*"。
阅读全文