<?xml version="1.0" encoding="GB2312"?>
<RESULT>
<VALUE>
<NO>1608</NO>
<ADDR>西湖国际</ADDR>
</VALUE>
<VALUE>
<NO>A328</NO>
<ADDR>西湖家居</ADDR>
</VALUE>
</RESULT>
<RESULT>
<VALUE>
<NO>1608</NO>
<ADDR>西湖国际</ADDR>
</VALUE>
<VALUE>
<NO>A328</NO>
<ADDR>西湖家居</ADDR>
</VALUE>
</RESULT>
1
)DOM
import java.io. * ;
import java.util. * ;
import org.w3c.dom. * ;
import javax.xml.parsers. * ;
public class MyXMLReader ... {
public static void main(String arge[])...{
long lasting =System.currentTimeMillis();
try...{
File f=new File("data.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());
}
}catch(Exception e)...{
e.printStackTrace();
}
2)SAX
import org.xml.sax.*;
import org.xml.sax.helpers.*;
import javax.xml.parsers.*;
public class MyXMLReader extends DefaultHandler ...{
java.util.Stack tags = new java.util.Stack();
public MyXMLReader() ...{
super();
}
public static void main(String args[]) ...{
long lasting = System.currentTimeMillis();
try ...{
SAXParserFactory sf = SAXParserFactory.newInstance();
SAXParser sp = sf.newSAXParser();
MyXMLReader reader = new MyXMLReader();
sp.parse(new InputSource("data.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);}
}
3) JDOM
import java.io.*;
import java.util.*;
import org.jdom.*;
import org.jdom.input.*;
public class MyXMLReader ...{
public static void main(String arge[]) ...{
long lasting = System.currentTimeMillis();
try ...{
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new File("data.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());
}
} catch (Exception e) ...{
e.printStackTrace();
}
}
4)DOM4J
import java.io.*;
import java.util.*;
import org.dom4j.*;
import org.dom4j.io.*;
public class MyXMLReader ...{
public static void main(String arge[]) ...{
long lasting = System.currentTimeMillis();
try ...{
File f = new File("data.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"));
}
} catch (Exception e) ...{
e.printStackTrace();
}
)
import java.io. * ;
import java.util. * ;
import org.w3c.dom. * ;
import javax.xml.parsers. * ;
public class MyXMLReader ... {
public static void main(String arge[])...{
long lasting =System.currentTimeMillis();
try...{
File f=new File("data.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());
}
}catch(Exception e)...{
e.printStackTrace();
}
2)SAX
import org.xml.sax.*;
import org.xml.sax.helpers.*;
import javax.xml.parsers.*;
public class MyXMLReader extends DefaultHandler ...{
java.util.Stack tags = new java.util.Stack();
public MyXMLReader() ...{
super();
}
public static void main(String args[]) ...{
long lasting = System.currentTimeMillis();
try ...{
SAXParserFactory sf = SAXParserFactory.newInstance();
SAXParser sp = sf.newSAXParser();
MyXMLReader reader = new MyXMLReader();
sp.parse(new InputSource("data.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);}
}
3) JDOM
import java.io.*;
import java.util.*;
import org.jdom.*;
import org.jdom.input.*;
public class MyXMLReader ...{
public static void main(String arge[]) ...{
long lasting = System.currentTimeMillis();
try ...{
SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new File("data.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());
}
} catch (Exception e) ...{
e.printStackTrace();
}
}
4)DOM4J
import java.io.*;
import java.util.*;
import org.dom4j.*;
import org.dom4j.io.*;
public class MyXMLReader ...{
public static void main(String arge[]) ...{
long lasting = System.currentTimeMillis();
try ...{
File f = new File("data.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"));
}
} catch (Exception e) ...{
e.printStackTrace();
}
)