XML file
<? XML version = "1.0" encoding = "gb2312"?>
<Result>
<Value>
<NO> a1234 </NO>
<ADDR> No. XX, section X, XX Road, xx Town, XX County, Sichuan Province </ADDR>
</Value>
<Value>
<NO> b1234 </NO>
<ADDR> XX group, XX village, XX Township, xxx City, Sichuan Province </ADDR>
</Value>
</Result>
First Dom Implementation Method
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 ("license plate number:" + Doc. getelementsbytagname ("no"). Item (I). getfirstchild (). getnodevalue ());
System. Out. println ("owner address:" + Doc. getelementsbytagname ("ADDR"). Item (I). getfirstchild (). getnodevalue ());
}
} Catch (exception e ){
E. printstacktrace ();
}
}
}
Second, dom4j Implementation Method
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 ("license plate number:" + Foo. elementtext ("no "));
System. Out. println ("owner address:" + Foo. elementtext ("ADDR "));
}
} Catch (exception e ){
E. printstacktrace ();
}
}
}
Third, JDOM Implementation Method
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 ("license plate number:" + (element) allchildren. Get (I). getchild ("no"). gettext ());
System. Out. println ("owner address:" + (element) allchildren. Get (I). getchild ("ADDR"). gettext ());
}
} Catch (exception e ){
E. printstacktrace ();
}
}
}
Method 4
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 ("Run time:" + (system. currenttimemillis ()-Lasting)
+ "Millisecond ");
}
Public void characters (char ch [], int start, int length)
Throws saxexception {
String tag = (string) tags. Peek ();
If (tag. Equals ("no ")){
System. Out. Print ("license plate number:" + new string (CH, start, length ));
}
If (tag. Equals ("ADDR ")){
System. Out. println ("Address:" + new string (CH, start, length ));
}
}
Public void startelement (string Uri, string localname, string QNAME,
Attributes attrs ){
Tags. Push (QNAME );
}
}