日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java读取xml文件的四种方法

發布時間:2024/9/30 java 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java读取xml文件的四种方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

xml文件:

  Xml代碼

  

<?xml version="1.0" encoding="GB2312"?><RESULT><VALUE><NO>A1234</NO><ADDR>河南省鄭州市</ADDR></VALUE><VALUE><NO>B1234</NO><ADDR>河南省鄭州市二七區</ADDR></VALUE></RESULT>

  第一種 DOM 實現方法:

  Java代碼

  

import java.io.File;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c.dom.Document;import org.w3c.dom.NodeList;public class MyXMLReader2DOM {public static void main(String arge[]) {long lasting = System.currentTimeMillis();try {File f = new File("data_10k.xml");DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();DocumentBuilder builder = factory.newDocumentBuilder();Document doc = builder.parse(f);NodeList nl = doc.getElementsByTagName("VALUE");for (int i = 0; i < nl.getLength(); i++) {System.out.print("車牌號碼:"+ doc.getElementsByTagName("NO").item(i).getFirstChild().getNodeValue());System.out.println("車主地址:"+ doc.getElementsByTagName("ADDR").item(i).getFirstChild().getNodeValue());System.out.println("運行時間:" + (System.currentTimeMillis() - lasting)+ "毫秒");}}} catch (Exception e) {e.printStackTrace();}}}

  第二種,DOM4J實現方法:

  Java代碼

  

import java.io.*;import java.util.*;import org.dom4j.*;import org.dom4j.io.*;public class MyXMLReader2DOM4J {public static void main(String arge[]) {long lasting = System.currentTimeMillis();try {File f = new File("data_10k.xml");SAXReader reader = new SAXReader();Document doc = reader.read(f);Element root = doc.getRootElement();Element foo;for (Iterator i = root.elementIterator("VALUE"); i.hasNext();) {foo = (Element) i.next();System.out.print("車牌號碼:" + foo.elementText("NO"));System.out.println("車主地址:" + foo.elementText("ADDR"));}System.out.println("運行時間:" + (System.currentTimeMillis() - lasting)+ "毫秒");}} catch (Exception e) {e.printStackTrace();}}}

  第三種 JDOM實現方法:

  Java代碼

  

import java.io.*;import java.util.*;import org.jdom.*;import org.jdom.input.*;public class MyXMLReader2JDOM {public static void main(String arge[]) {long lasting = System.currentTimeMillis();try {SAXBuilder builder = new SAXBuilder();Document doc = builder.build(new File("data_10k.xml"));Element foo = doc.getRootElement();List allChildren = foo.getChildren();for (int i = 0; i < allChildren.size(); i++) {System.out.print("車牌號碼:"+ ((Element) allChildren.get(i)).getChild("NO").getText());System.out.println("車主地址:"+ ((Element) allChildren.get(i)).getChild("ADDR").getText());}System.out.println("運行時間:" + (System.currentTimeMillis() - lasting)+ "毫秒");}} catch (Exception e) {e.printStackTrace();}}}

  第四種SAX實現方法:

  Java代碼

  

import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory;import org.xml.sax.Attributes;import org.xml.sax.InputSource;import org.xml.sax.SAXException;import org.xml.sax.helpers.DefaultHandler;public class MyXMLReader2SAX extends DefaultHandler {java.util.Stack tags = new java.util.Stack();public MyXMLReader2SAX() {super();}public static void main(String args[]) {long lasting = System.currentTimeMillis();try {SAXParserFactory sf = SAXParserFactory.newInstance();SAXParser sp = sf.newSAXParser();MyXMLReader2SAX reader = new MyXMLReader2SAX();sp.parse(new InputSource("data_10k.xml"), reader);} catch (Exception e) {e.printStackTrace();}System.out.println("運行時間:" + (System.currentTimeMillis() - lasting)+ "毫秒");}public void characters(char ch[], int start, int length)throws SAXException {String tag = (String) tags.peek();if (tag.equals("NO")) {System.out.print("車牌號碼:" + new String(ch, start, length));}if (tag.equals("ADDR")) {System.out.println("地址:" + new String(ch, start, length));}}public void startElement(String uri, String localName, String qName,Attributes attrs) {tags.push(qName);}}轉載: http://www.jz123.cn/text/2229619.html

總結

以上是生活随笔為你收集整理的Java读取xml文件的四种方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。