Java四种方式操作 xml,DOM|SAX|JDOM|DOM4J

<?xml version="1.0" encoding="GB2312"?> <RESULT> <VALUE>    <NO>A1234</NO>    <ADDR>四川省XX县XX镇XX路X段XX号</ADDR> </VALUE> <VALUE>    <NO>B1234</NO>    <ADDR>四川省XX市XX乡XX村XX组</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_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());    }   }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_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);} } 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_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());    }   } 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_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"));    }   } catch (Exception e) {    e.printStackTrace(); } )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值