java读取xml文件内容的四种方法_Java读取xml文件的四种方法

  • Post author:
  • Post category:java

Java读取xml文件的四种方法以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

d033bc2a588c8c6e229b7da0528a0101.png

xml文件

Xml代码

A

河南省郑州市

B

河南省郑州市二七区

第一种 DOM 实现方法

Java代码

import java io File;

import javax xml parsers DocumentBuilder;

import javax xml parsers DocumentBuilderFactory;

import w c dom Document;

import w c dom NodeList;

public class MyXMLReader DOM {

public static void main(String arge[]) {

long lasting = System currentTimeMillis();

try {

File f = new File( data_ k xml );

DocumentBuilderFactory factory = DocumentBuilderFactory newInstance();

DocumentBuilder builder = factory newDocumentBuilder();

Document doc = builder parse(f);

NodeList nl = doc getElementsByTagName( VALUE );

for (int i = ; i < nl getLength(); i++) {

System out print( 车牌号码: + doc getElementsByTagName( NO em(i) getFirstChild() getNodeValue());

System out println( 车主地址: + doc getElementsByTagName( ADDR em(i) getFirstChild() getNodeValue());

System out println( 运行时间 + (System currentTimeMillis() lasting)

+ 毫秒 );

}

}

} catch (Exception e) {

e printStackTrace();

}

}

}

第二种 DOM J实现方法

Java代码

import java io *;

import java util *;

import dom j *;

import dom j io *;

public class MyXMLReader DOM J {

public static void main(String arge[]) {

long lasting = System currentTimeMillis();

try {

File f = new File( data_ k 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 jdom *;

import jdom input *;

public class MyXMLReader JDOM {

public static void main(String arge[]) {

long lasting = System currentTimeMillis();

try {

SAXBuilder builder = new SAXBuilder();

Document doc = builder build(new File( data_ k xml ));

Element foo = doc getRootElement();

List allChildren = foo getChildren();

for (int i = ; 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 xml sax Attributes;

import xml sax InputSource;

import xml sax SAXException;

import xml sax helpers DefaultHandler;

public class MyXMLReader SAX extends DefaultHandler {

java util Stack tags = new java util Stack();

public MyXMLReader SAX() {

super();

}

public static void main(String args[]) {

long lasting = System currentTimeMillis();

try {

SAXParserFactory sf = SAXParserFactory newInstance();

SAXParser sp = sf newSAXParser();

MyXMLReader SAX reader = new MyXMLReader SAX();

sp parse(new InputSource( data_ k 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);

} lishixinzhi/Article/program/Java/hx/201311/25610

分页:123


版权声明:本文为weixin_30194213原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。