一、使用JDOOM解析xml文檔
准備工作
1.下載JDOM.jar 包
解析代碼如下
import org.jdom2.Attribute; import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.input.SAXBuilder; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.List; public class Main { public static void main(String[] args) throws Exception { //創建一個解析器 SAXBuilder builder=new SAXBuilder(); //創建一個文件輸入流 InputStream in=new FileInputStream("src/server.xml"); //將流加載到解析器中。 Document document=builder.build(in); //獲取文檔的根節點 Element rootElement=document.getRootElement(); //將根節點的所有子節點獲取放到一個集合中 List<Element> list=rootElement.getChildren(); //循環遍歷所有子節點 for(Element element:list){ System.out.println("開始遍歷第"+(list.indexOf(element)+1)+"本書======"); //獲取所有的屬性並遍歷輸出 List<Attribute> list1=element.getAttributes(); for(Attribute attr:list1){ System.out.println("屬性名是"+attr.getName()); System.out.println("屬性值是"+attr.getValue()); } System.out.println("結束遍歷第"+(list.indexOf(element)+1)+"本書======"); } } }
二、使用DOM4J解析xml文檔
准備工作:
1.下載導入DOM4J的jar包,代碼如下:
import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; import java.io.File; import java.util.Iterator; import java.util.List; public class Main { public static void main(String[] args) throws Exception { //創建一個解析器 SAXReader saxReader=new SAXReader(); //加載文檔到dom中,注意是dom4j中的dom Document document=saxReader.read(new File("src/server.xml")); //獲取文檔的根節點 Element bookStore=document.getRootElement(); //獲取根節點的迭代器 Iterator iter=bookStore.elementIterator(); //迭代根節點下面的子節點 while(iter.hasNext()){ System.out.println("開始遍歷謀一本書========="); Element book=(Element)iter.next(); //獲取節點的屬性集合 List<Attribute> bookAttr=book.attributes(); //遍歷屬性集合 for(Attribute attr:bookAttr){ System.out.println("屬性名:"+attr.getName()+"====屬性值:"+attr.getValue()); } //獲取子節點book的子節點迭代器 Iterator iterator=book.elementIterator(); while(iterator.hasNext()){ Element child=(Element)iterator.next(); System.out.println("節點名:"+child.getName()+"==節點值:"+child.getStringValue()); } System.out.println("結束遍歷謀一本書========="); } } }