Java を使用して XML ドキュメントを解析するには、最も一般的に使用される 2 つの方法があります。SAX と呼ばれるイベントベースの XML シンプル API (Simple API for XML) を使用する方法と、SAX と呼ばれるツリーおよびノードベースのドキュメント オブジェクト モデル (ドキュメント オブジェクト モジュール) を使用する方法です。ドム。
Sun は、SAX および DOM を使用するための Java API for XML Parsing (JAXP) インターフェースを提供しており、JAXP を通じて、JAXP 互換の XML パーサーを使用できます。 JAXP インターフェースには 3 つのパッケージが含まれています: org.w3c.dom W3C が XML 標準計画文書オブジェクト・モデルとして推奨するインターフェース。 org.xml.sax XML を解析するためのイベント駆動型 XML Simple API (SAX) javax.xml.parsers プログラマーが特別なアドホック パーサーを取得して構成するパーサー ファクトリ ツール。 Java XML パーサーimport java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class DomParse { public DomParse(){ DocumentBuilderFactory domfac=DocumentBuilderFactory.newInstance(); try { DocumentBuilder dombuilder=domfac.newDocumentBuilder(); InputStream is=new FileInputStream("WebRoot/WEB-INF/hell.xml"); Document doc=dombuilder.parse(is); Element root=doc.getDocumentElement(); NodeList books=root.getChildNodes(); if(books!=null){ for(int i=0;i<books.getLength();i++){ Node book=books.item(i); if(book.getNodeType()==Node.ELEMENT_NODE){ String email=book.getAttributes().getNamedItem("email").getNodeValue(); System.out.println(email); for(Node node=book.getFirstChild();node!=null;node=node.getNextSibling()){ if(node.getNodeType()==Node.ELEMENT_NODE){ if(node.getNodeName().equals("name")){ String name=node.getNodeValue(); String name1=node.getFirstChild().getNodeValue(); System.out.println(name); System.out.println(name1); } if(node.getNodeName().equals("price")){ String price=node.getFirstChild().getNodeValue(); System.out.println(price); } } } } } } } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { new DomParse(); } }
以上がJava で XML ファイルを解析するコード例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。