- DOM方式
import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.Node; import org.w3c.dom.NodeList; /** * * @author WalkingDog * */ public class ReadXML { public static void main(String[] args) { new ReadXML().readXML("E:/input.xml"); } private void readXML(String uri) { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = null; Document document = null; try { builder = factory.newDocumentBuilder(); document = builder.parse(uri); } catch (Exception e) { e.printStackTrace(); factory = null; } Element root = document.getDocumentElement(); readNode(root); } private void readNode(Node node) { if(!node.hasChildNodes()) { System.out.print(node.getTextContent()); return; } StringBuffer buf = new StringBuffer(); if(node.hasAttributes()) { NamedNodeMap map = node.getAttributes(); int len = map.getLength(); for(int i = 0; i < len; i++) { Node n = map.item(i); buf.append(" " + n.getNodeName() + "=\"" + n.getNodeValue() + "\""); } } System.out.print("<" + node.getNodeName() + buf + ">"); NodeList list = node.getChildNodes(); int length = list.getLength(); for(int i = 0; i < length; i++) { Node n = list.item(i); readNode(n); } } }
- SAX方式
Java 解析 XML
最新推荐文章于 2024-01-25 17:01:37 发布