旗下导航:搜·么
当前位置:网站首页 > XML教程 > 正文

用Java剖析XML文件的代码示例【XML教程】,Java,XML

作者:搜教程发布时间:2019-12-01分类:XML教程浏览:87评论:0


导读:用Java剖析XML文档,最经常运用的有两种要领:运用基于事宜的XML简朴API(SimpleAPIforXML)称为SAX和基于树和节点的文档对象模子(Document...
用Java剖析XML文档,最经常运用的有两种要领:运用基于事宜的XML简朴API (Simple API for XML)称为SAX和基于树和节点的文档对象模子(Document Object Module)称为DOM。

Sun公司供应了Java API for XML Parsing(JAXP)接口来运用SAX和DOM,经由过程JAXP,我们能够运用任何与JAXP兼容的XML剖析器。 JAXP接口包含了三个包:

org.w3c.dom W3C引荐的用于XML规范计划文档对象模子的接口。

org.xml.sax用于对XML举行语法分析的事宜驱动的XML简朴API(SAX)

javax.xml.parsers剖析器工场东西,程序员取得并设置特别的特别语法分析器。

java XML parser

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文件的代码示例的细致内容,更多请关注ki4网别的相干文章!

标签:JavaXML


欢迎 发表评论: