您好,登錄后才能下訂單哦!
小編給大家分享一下XML文件使用DOM方法讀取的案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
XML內容(放入項目中)
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book id="1"> <name>冰與火之歌</name> <author>喬治馬丁</author> <year>2014</year> <price>89</price> </book> <book id="2"> <name>安徒生童話</name> <year>2004</year> <price>77</price> <language>English</language> </book> </bookstore>
代碼實現
import java.awt.print.Book; import java.io.IOException; 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.NamedNodeMap; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class XmlDOM { public static void main(String[] args) { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); try { DocumentBuilder builder = dbf.newDocumentBuilder(); Document document = builder.parse("xml/001.xml"); //nodeList獲取所有節點的集合 NodeList nodeList = document.getElementsByTagName("book"); //便利每一個book節點 for(int i=0;i<nodeList.getLength();i++){ System.out.println("------------------------------------------j第" + (i+1) + "本書信息"); //獲取book節點 Node book = nodeList.item(i); /* //獲取到書的所有信息 NamedNodeMap bookMap = book.getAttributes(); //遍歷 for(int n=0;n<bookMap.getLength();n++){ Node attr = bookMap.item(n); //獲取屬性名/獲取屬性值 System.out.println("屬性名:"+attr.getNodeName() + "" + "屬性值:" + attr.getNodeValue()); }*/ NodeList childNodes = book.getChildNodes(); for(int j=0;j<childNodes.getLength();j++){ //區分出text類型的node以及element類型的node if(childNodes.item(j).getNodeType() == Node.ELEMENT_NODE){ //獲取了Element節點的節點名 System.out.println(childNodes.item(j).getNodeName() + "=" + childNodes.item(j).getTextContent()); } } } } catch (ParserConfigurationException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
執行結果:
------------------------------------------j第1本書信息 name=冰與火之歌 author=喬治馬丁 year=2014 price=89 ------------------------------------------j第2本書信息 name=安徒生童話 year=2004 price=77 language=English
以上是XML文件使用DOM方法讀取的案例的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。