`
xiajin2080
  • 浏览: 36962 次
  • 性别: 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你定义的包啊。

相关推荐

    XML读写tinyxml

    它的简单API使得XML读写任务变得轻而易举,而且由于其小巧的体积,使得它成为嵌入式系统和资源有限环境的理想选择。在实际开发中,结合XML的灵活性和TinyXML的易用性,可以有效地实现数据持久化和跨平台的数据交换。

    xml读写帮助类

    本文将深入探讨“XML读写帮助类”的相关知识点,包括XML的基本结构、解析方式、读写操作以及如何创建一个实用的Java XML助手类。 1. XML基本结构: - 元素(Element):XML文档的核心,如`&lt;book&gt;`,元素可以包含...

    C# 服务 多线程 XMl读写

    标题中的"C# 服务 多线程 XML读写"涵盖了几个关键的编程概念,下面将分别详细介绍这些知识点。 首先,让我们来谈谈"C#"。C#是微软开发的一种面向对象的编程语言,它广泛用于构建Windows应用程序、Web应用程序、游戏...

    xml读写

    - Java中的XML读写: - DOM解析:使用`javax.xml.parsers.DocumentBuilderFactory`和`org.w3c.dom.Document`类读取XML,`TransformerFactory`和`Transformer`进行写入。 - SAX解析:通过`org.xml.sax.XMLReader`...

    Java与XML读写之DOM篇

    下面将详细阐述DOM模型、解析过程以及如何在Java中使用DOM进行XML读写。 DOM模型的核心概念是节点(Node)。XML文档的每个部分——元素(Element)、属性(Attribute)、文本(Text)等都被表示为一个节点对象。DOM...

    使用tinyxml 读写xml文件方法

    在本文中,我们将深入探讨如何使用 TinyXML 来读写 XML 文件,以及它在 Visual C++ 开发环境中的应用。 1. **TinyXML 的基本结构** TinyXML 提供了一系列类来表示 XML 文档的不同部分,如 `TiXmlDocument`(XML ...

    XML读写工具类

    本人没分了,特别来分享一下,通用的XML读写工具类,同志们下下绝对不后悔

    关于xml读写

    XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,它以其结构化、可扩展性和易于解析的特点广泛应用于各种软件开发中,包括...通过熟练掌握C#中的XML读写技术,可以有效提升开发效率和代码质量。

    XML读写配置文件类封装

    XML读写配置文件类封装

    C#一个完整的XML读写类

    一点心得分享给大家,简单的XML读写类,方便的开发应用程序

    c#下的xml读写函数

    自己写的c#下的xml读写函数,希望能给新手带来帮助

    XML.rar_XML java_java call_java xml_xml 读写_xml读写 java

    另外,Java标准库中的javax.xml.parsers和org.w3c.dom包也提供了基本的XML读写支持。 在实际开发中,XML常用于配置文件、数据交换、SOAP(Simple Object Access Protocol)服务等场景。例如,Spring框架大量使用XML...

    JSP实现对XML读写

    【JSP实现对XML读写】是Web开发中的一项重要技能,它结合了JSP(Java Server Pages)和XML(可扩展标记语言)的优势,使开发者能更灵活地处理和存储数据。XML作为一种通用的数据交换格式,具有自描述性和结构化特点...

    用System.Xml 读写XML

    2. **流式读写器**:如`XmlReader`和`XmlWriter`,它们提供了快速读写XML文档的能力,适用于大数据量的处理,因为它们不将整个文档加载到内存中。 3. **验证读写器**:如`XmlValidatingReader`和`...

    c++ XML读写

    XML(eXtensible Markup Language)是一种用于...对于初学者,建议先从简单的XML读写开始,逐步掌握更复杂的功能,如XPath查询、XSLT转换等。同时,理解XML的结构和语法规则是进行操作的基础,务必确保XML的合法性。

    xml读写操作

    本示例提供了一个VC++实现的XML读写操作,通过类`VC_CXmlFile`来简化这一过程,增强了代码的可读性和易用性。 在`VC_CXmlFile.sln`中,这是一个Visual Studio的解决方案文件,包含了项目的配置信息和项目依赖。打开...

    Tinyxml读写xml源文件

    本篇文章将详细介绍如何在VC++项目中集成和使用TinyXML库来读写XML文件。 首先,你需要将TinyXML库的源代码文件添加到你的工程中。"TinyXml"压缩包中通常包含了以下几个主要文件: 1. `tinyxml.h` - 这是TinyXML的...

    c#xml读写demo

    首先,XML读写涉及到两个主要的类:`XmlReader`和`XmlWriter`。`XmlReader`提供了一个高效的、只进的、非缓存的读取器,用于解析XML文档。`XmlWriter`则是一个用于创建XML文档的抽象类,可以用来构建新的XML结构或者...

    TinyXML读写XML实例

    总之,这个"TinyXML读写XML实例"通过结合MFC的图形用户界面和TinyXML的XML处理能力,提供了一个直观的、简单的学习XML读写的方法。它可以帮助开发者快速理解和应用XML数据处理技术,从而在实际项目中更有效地管理...

    pb的xml读写例子

    标题 "pb的xml读写例子" 涉及到的是使用PowerBuilder(PB)这一编程工具处理XML文件的实践操作。PowerBuilder是一款流行的面向对象的集成开发环境(IDE),尤其适用于构建数据库应用。XML(eXtensible Markup ...

Global site tag (gtag.js) - Google Analytics