`
xiajin2080
  • 浏览: 35859 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
  • Airflare: 你这也不对啊,各种报错啊!DocumentHelper哪来的啊 ...
    XML读写
  • myali88: 为什么我用$.getJSON请求返回的始终是一个JSON格式的 ...
    jQuery+JSON

XML读写

    博客分类:
  • XML
阅读更多
1.TestDom4J.java
package com.fayhong.test;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

import com.fayhong.util.Helper;

public class TestDom4J {
	public static void main(String args[]){
		//DOM4J使用示例
		
		
		TestDom4J testDom4J=new TestDom4J();
		testDom4J.jiexi();
		testDom4J.test();
	}
	public void test(){
		
		Document document = DocumentHelper.createDocument();
		Element reportElement = document.addElement("Report");
		
		Element person=reportElement.addElement("Person");
		Element name=person.addElement("name");
		name.setText("xiajin");
		name.setAttributeValue("des", "姓名");
		Element no=person.addElement("no");
		no.setAttributeValue("des", "学号");
		no.setText("03551220");
		
		Element person2=reportElement.addElement("Person");
		Element name2=person2.addElement("name");
		name2.setText("luobihong");
		Element no2=person2.addElement("no");
		no2.setText("03551225");
		
		File dirFile = null;
		dirFile = new File("d:/file/飞鸿科技");
		if (!(dirFile.exists()) && !(dirFile.isDirectory())) {
			boolean creadok = dirFile.mkdirs();
			if (creadok) {
				System.out.println(" ok:创建文件夹成功! ");
			} else {
				System.out.println(" err:创建文件夹失败! ");
			}
		}
		StringBuffer sb = new StringBuffer();
		try {
			sb.append(dirFile.getCanonicalPath()).append("/").append(Helper.generateCurrentDateB()).append(".xml");
			XMLWriter xmlWriter = new XMLWriter(new FileWriter(new File(sb.toString())));
			xmlWriter.write(document);
			xmlWriter.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		System.out.println(sb.toString());
		
	}
	public void jiexi(){
		try {
			Document document = new SAXReader().read(Thread.currentThread().getContextClassLoader().getResourceAsStream("test.xml"));
			List list=document.selectNodes("//Report/Person");
	
			
			for (Iterator iterator = list.iterator(); iterator.hasNext();) {
				Element element = (Element) iterator.next();
//				System.out.println("name==="+element.getName());
//				System.out.println("attributeValue==="+element.attributeValue("a"));
//				System.out.println("number==="+element.elementText("number"));
//				System.out.println("getText==="+element.getStringValue());
				List list2=element.elements();
				for (Iterator iterator2 = list2.iterator(); iterator2.hasNext();) {
					Element name = (Element) iterator2.next();
					System.out.println(name.getName()+" : "+name.getText()+name.attributeValue("des"));
				}
			}
			Element e=document.getRootElement();
			List el=e.elements();
			for (Iterator iterator = el.iterator(); iterator.hasNext();) {
				Element element = (Element) iterator.next();
				List list2=element.elements();
				for (Iterator iterator2 = list2.iterator(); iterator2.hasNext();) {
					Element name = (Element) iterator2.next();
					System.out.println(name.getName()+" : "+name.getText()+name.attributeValue("des"));
				}
			}
			System.out.println(e);
		
		} catch (DocumentException e) {
			e.printStackTrace();
		}
	}
}


2.test.xml
<?xml version="1.0" encoding="UTF-8"?>
<Report><Person><name des="姓名">xiajin</name><no des="学号">03551220</no></Person><Person><name>luobihong</name><no>03551225</no></Person></Report>
分享到:
评论
1 楼 Airflare 2010-04-16  
你这也不对啊,各种报错啊!DocumentHelper哪来的啊?哪有
import org.dom4j.Document;  
import org.dom4j.DocumentException;  
import org.dom4j.DocumentHelper;  
import org.dom4j.Element;  
import org.dom4j.io.SAXReader;  
import org.dom4j.io.XMLWriter;  
dom4j你定义的包啊。

相关推荐

Global site tag (gtag.js) - Google Analytics