解析XML文件

一个XML文件

<?xml version="1.0" encoding="UTF-8"?>
<jinhong>
 <index>
  <zbbm>a</zbbm>
  <zbmc>b</zbmc>
  <zbjs>c</zbjs>
  <flbm>d</flbm>
  <jldw>e</jldw>
  <zbld>
   <lddm>f</lddm>
   <ldmc>g</ldmc>
  </zbld>
  <zbsx>
   <sxdm>h</sxdm>
   <sxmc>i</sxmc>
  </zbsx>
 </index>
</jinhong>

 

JODM解析法

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
//下面是引用到JDOM中的类
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;

public class jdom {
 public void JDomParse(String xfp){
  String xmlpath = xfp;
  //使用JDOM首先要指定使用什么解析器,这使用的是默认的解析器
  SAXBuilder builder=new SAXBuilder(false);
  try {
      Document doc=builder.build(xmlpath);
   Element jinhong=doc.getRootElement();
   List index=jinhong.getChildren("index");
   for (Iterator iter = index.iterator(); iter.hasNext();) {
    Element indexlist = (Element) iter.next();
    String zbbm=indexlist.getChildTextTrim("zbbm"); 
    String zbmc=indexlist.getChildTextTrim("zbmc"); 
    String zbjs=indexlist.getChildTextTrim("zbjs"); 
    String flbm=indexlist.getChildTextTrim("flbm"); 
    String jldw=indexlist.getChildTextTrim("jldw"); 
    Element zbld = indexlist.getChild("zbld");
    String lddm = zbld.getChildText("lddm");
    String ldmc = zbld.getChildText("ldmc");
    Element zbsx = indexlist.getChild("zbsx");
    String sxdm = zbsx.getChildText("sxdm");
    String sxmc = zbsx.getChildText("sxmc");
    
    System.out.println(zbbm);
    System.out.println(zbmc);
    System.out.println(zbjs);
    System.out.println(flbm);
    System.out.println(jldw);
    System.out.println(lddm);
    System.out.println(ldmc);
    System.out.println(sxdm);
    System.out.println(sxmc);
   }
   //XMLOutputter outputter=new XMLOutputter();
   //outputter.output(doc,new FileOutputStream(xmlpath));
  } catch (JDOMException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }
 }
 public static void main(String[] args) {
  jdom jd = new jdom();
  jd.JDomParse("DataExchForIndex.xml");
 }
}

 

DOM4J解析法

 import java.io.BufferedReader;

 import java.io.BufferedWriter;

 import java.io.File;

 import java.io.FileReader;

 import java.io.FileWriter;

 import java.io.IOException;

 import org.dom4j.Attribute;

 import org.dom4j.DocumentException;

 import org.dom4j.DocumentHelper;

 import org.dom4j.Element;
 

public class dom4j{
  
  public void domjParse(String xfp){
        
     try{
        
         BufferedReader reader=new BufferedReader(new FileReader(xfp));

         String tempStr;

         String ewXml="";

         while((tempStr=reader.readLine())!=null) {

             ewXml=ewXml+tempStr;

         }

        Element root = DocumentHelper.parseText(ewXml).getRootElement();
       
        Element index = root.element("index");
    
        Element zbbm = index.element("zbbm");
        Element zbmc = index.element("zbmc");
        Element zbjs = index.element("zbjs");
        Element flbm = index.element("flbm");
        Element jldw = index.element("jldw");
        Element zbld = index.element("zbld");
        Element zbsx = index.element("zbsx");
       
        String zbbmstr = zbbm.getTextTrim();
        String zbmcstr = zbmc.getTextTrim();
        String zbjsstr = zbjs.getTextTrim();
        String flbmstr = flbm.getTextTrim();
        String jldwstr = jldw.getTextTrim();
       
        Element lddm = zbld.element("lddm");       
        Element ldmc = zbld.element("ldmc");
        Element sxdm = zbsx.element("sxdm");
        Element sxmc = zbsx.element("sxmc");
       
        String lddmstr = lddm.getTextTrim();
        String ldmcstr = ldmc.getTextTrim();
        String sxdmstr = sxdm.getTextTrim();
        String sxmcstr = sxmc.getTextTrim();
       
        System.out.println(zbbmstr);
        System.out.println(zbmcstr);
        System.out.println(zbjsstr);
        System.out.println(flbmstr);
        System.out.println(jldwstr);
        System.out.println(lddmstr);
        System.out.println(ldmcstr);
        System.out.println(sxdmstr);
        System.out.println(sxmcstr);
       
      } catch (DocumentException e) {
       
   e.printStackTrace();
   
   } catch (IOException e) {
   
   e.printStackTrace();
  }

  }
  
  public static void main(String[] args) {
   
  dom4j dj = new dom4j();
  
  dj.domjParse("DataExchForIndex.xml");
  
 }
 }
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值