DOM解析XML纪要

 package com.accp.test;

public interface XmLDocument {
 public void createXML(String fileName);
 public void parseXML(String fileName);
 
}

 

 

 

package com.accp.test;

import java.io.*;
import java.util.Iterator;

import org.dom4j.*;
import org.dom4j.io.XMLWriter;
import org.dom4j.io.SAXReader;

public class Dom4jTest implements XmLDocument {
  public void createXML(String fileName)
  {
   //根据hibernate3.2的核心包中dom4j来进行xml解析,这里创建xml
   Document document=DocumentHelper.createDocument();
   Element elements=document.addElement("employees");
   Element element=elements.addElement("employee");
   Element name=element.addElement("name");
   name.setText("liuye");
   Element age=element.addElement("age");
   age.setText("23");
   Element address=element.addElement("address");
   address.setText("wuhan");
   try
   {
    //文件读写,写进指定的地址
    FileWriter fileWriter=new FileWriter(fileName);
    //XMLWriter写入文件
    XMLWriter writer=new XMLWriter(fileWriter);
    writer.write(document);
    writer.close();
   }catch(Exception ex)
   {
    ex.printStackTrace();
   }
   
   
   


  }
  public void parseXML(String fileName)
  {
   //文件读
   File file=new File(fileName);
   SAXReader reader=new SAXReader();
   try {
    //文件读,用SAXReader
    Document document=reader.read(file);
    //用Element得到根节点以及所有元素
    Element elements=document.getRootElement();
    //elementIterator遍历
    for (Iterator iterator = elements.elementIterator(); iterator
      .hasNext();) {
     //element进行子元素存储
     Element element = (Element) iterator.next();
     //继续遍历,一般需要遍历几层就遍历几层。更具需求
     for (Iterator iterator2 = element.elementIterator(); iterator2
       .hasNext();) {
      Element type = (Element) iterator2.next();
      //得到结果
      System.out.println(type.getName()+"---"+type.getText());
      
     }
    }
   } catch (Exception e) {
    e.printStackTrace();
   }
   
  }
}

 

 

 

 

 

package com.accp.test;

public class Main {
 public static void main(String[] args) {
  String fileName="C://Documents and Settings//Administrator//桌面//java.txt";
  //接口创建实现类对象
  XmLDocument document=new Dom4jTest();
  document.createXML(fileName);
  
  document.parseXML(fileName);
  
  
  
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值