Java利用dom4j生成xml文件、解析XML

package com.fq.fanqi;

import java.io.File;

import java.io.FileWriter;

import java.io.IOException;

import java.util.List;

import org.dom4j.Attribute;

import org.dom4j.Document;

import org.dom4j.DocumentHelper;

import org.dom4j.Element;

import org.dom4j.io.OutputFormat;

import org.dom4j.io.SAXReader;

import org.dom4j.io.XMLWriter;

public class TaoDaShen {

public void creatXml(File file) throws IOException {

//创建一个文档模型

Document document = DocumentHelper.createDocument();

//定义一个根节点

Element root = document.addElement("parameters");

//根节点下添加子节点

Element paramer1 = root.addElement("tao");

//节点添加属性

paramer1.addAttribute("taodashen", "淘大婶");

//节点添加文本

paramer1.addText("大婶好");

Element paramer2 = root.addElement("zhou");

paramer2.addAttribute("xiaozhou", "mengwa");

paramer2.addText("萌娃娃");

Element paramer3 = root.addElement("xu");

paramer3.addAttribute("xinyi", "teacher");

Element guodaxia = paramer3.addElement("guowei");

guodaxia.addAttribute("name", "guo");

guodaxia.addAttribute("ming", "daxia");

guodaxia.addText("郭大侠");

//创建XML格式

//StringWriter stringWriter = new StringWriter();

OutputFormat xmlFormat = new OutputFormat();

xmlFormat.setEncoding("UTF-8");

xmlFormat.setNewlines(true);

xmlFormat.setIndent(" ");

FileWriter fileWriter = new FileWriter(file);

XMLWriter xmlWriter = new XMLWriter(fileWriter,xmlFormat);

xmlWriter.write(document);

xmlWriter.close();

}

//获取节点名,节点属性

public void iteratorCherk(Element element) {

List<Element> elements = element.elements();

for(Element ele : elements){

List<Attribute> attributeList = ele.attributes();

String name = ele.getName();

String text = ele.getTextTrim();

System.out.println(name + " " + text + " " + "节点");

for(Attribute att : attributeList){

String aname = att.getName();

String atext = att.getText();

System.out.println(aname + " " + atext + " " + "属性");

}

System.out.println("----------------------------------------");

iteratorCherk(ele);

}

}

//解析XML

public void analysisXml(File file) throws Exception {

//

SAXReader reader = new SAXReader();

Document document = reader.read(file);

Element root = document.getRootElement();

iteratorCherk(root);

}

public static void main(String[] args) throws Exception {

TaoDaShen taoDaShen = new TaoDaShen();

File file = new File("W:\\test.xml");

taoDaShen.creatXml(file);

taoDaShen.analysisXml(file);

}

}