`

java需要关注的知识点---I0之XML的生成

 
阅读更多
package com.io;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Arrays;
import java.util.List;

import nu.xom.Document;
import nu.xom.Element;
import nu.xom.Serializer;
public class XmlCtrTest {
	public static void main(String[] args) throws IOException {
		List<Person> people = Arrays.asList(new Person("DR.", "Jie"),
				new Person("MJ", "Tim"), new Person("Phillip", "Vic"));
		System.out.println(people);
		Element root = new Element("people");
		for(Person p:people)
			root.appendChild(p.getXML());
		Document doc = new Document(root);
		Person.format(System.out,doc);
		Person.format(new BufferedOutputStream(new FileOutputStream("peolple.xml")),doc);
		
	}
}
class Person{
	private String firstV,lastV;

	public Person(String first, String last) {
		super();
		this.firstV = first;
		this.lastV = last;
	}
	
	public Element getXML() {
		Element person = new Element("person");
		Element first = new Element("first");
		first.appendChild(firstV);
		Element last = new Element ("last");
		last.appendChild(lastV);
		person.appendChild(first);
		person.appendChild(last);
		return person;
	}
	
	public String toString() {return firstV + "  " + lastV;}
	public static void format(OutputStream os,Document doc) throws IOException {
		Serializer serializer = new Serializer(os,"ISO-8859-1");
		serializer.setIndent(4);
		serializer.setMaxLength(60);
		serializer.write(doc);
		serializer.flush();
	}
}

XML读取:
public class ReadXMlExample extends ArrayList<Person>{
	public ReadXMlExample(String fileName) throws ValidityException, ParsingException, IOException {
		Document doc = new Builder().build(fileName);
		Elements elements = doc.getRootElement().getChildElements();
		for(int i = 0; i<elements.size(); i++) {
			add(new Person(elements.get(i)));
		}
	}
	public static void main(String[] args) throws ValidityException, ParsingException, IOException {
		ReadXMlExample rxe = new ReadXMlExample("peolple.xml");
		System.out.println(rxe);
	}
}
分享到:
评论

相关推荐

    Java解析和生成XML.pdf

    Java解析和生成XML的知识点主要涵盖了使用JAXB(Java Architecture for XML Binding)框架来实现Java对象与XML(可扩展标记语言)之间的数据转换。JAXB提供了一种便捷的方式,通过注解(Annotation)来实现这一过程...

    JAVA生成XML文件.doc

    ### JAVA生成XML文件知识点 #### 一、简介 在Java编程中,生成XML文件是一种常见的需求,尤其是在数据交换、配置管理或系统间通信时。本文档通过一个具体的示例介绍了如何使用Java语言来生成XML文件,并对代码进行...

    java根据xml生成schema_xsd_生成javabean

    标题“java根据xml生成schema_xsd_生成javabean”涉及的知识点主要包括: 1. XML到XSD的转换:XML文档可以被转化为XSD文件,以定义其结构和数据类型。这个过程通常通过工具完成,比如`trang.jar`,这是一个开源的...

    java解析xml动态生成树形菜单结构

    总结起来,实现“java解析xml动态生成树形菜单结构”的项目,需要掌握以下核心知识点: 1. Java的DOM解析XML,构建树形数据结构。 2. 设计和实现无限层级的树形菜单数据模型。 3. 使用`JSTree`库在前端渲染树形菜单...

    java操纵xml文件的读写,并根据xml生成树型菜单

    **知识点**: 上述代码展示了用于读写文件的基本Java类库(如`java.io.*`),以及用于处理XML的第三方库JDOM中的`SAXBuilder`等类。这些类是实现XML文件读写的基石。 ##### 2. 常量定义 ```java private static ...

    java生成指定格式的XML

    下面将详细介绍如何在Java中生成XML以及相关的知识点。 1. **DOM(Document Object Model)模型** DOM是处理XML文档的一种常见方式,它将XML文档解析为一个树形结构,允许开发者通过节点操作来构建或修改XML文档。...

    java-xml自动生成对象实体以及与xml相互转化.zip_Java doc转xml_java xml 转 实体_java 毕

    这一过程通常涉及到以下几个关键知识点: 1. **Java DOM解析器**:DOM(Document Object Model)是一种将XML文档转化为内存中的树形结构的解析方法,通过它可以遍历和修改XML文档。在Java中,`javax.xml.parsers....

    java_动态生成XML文件

    本文将详细解析如何使用JDOM库在Java中动态创建XML文档,通过分析给定代码示例来深入理解其核心知识点。 ### JDOM库简介 JDOM(Java Document Object Model)是用于处理XML的Java库之一,它提供了简单直观的API来...

    xml自动生成java代码(改)

    "xml自动生成java代码(改)"这个主题指的是通过解析XML文件来生成对应的Java类,以便于简化开发过程,提高效率。通常,这涉及到XML解析技术,如DOM解析,以及Java文件的读写操作。 DOM解析是处理XML文档的一种方法...

    java日期和查询数据库生成XML文件类

    以下是一些关于“java日期和查询数据库生成XML文件类”的核心知识点: 1. **Java日期处理**: - `java.time`包:Java 8引入的新时间日期API,提供了`LocalDate`, `LocalTime`, `LocalDateTime`等类,它们提供了...

    java-unrar-decryption-supported

    总的来说,这个场景涉及到Java编程中的文件操作、压缩文件解压、加密算法应用等多个知识点。通过`java-unrar-decryption-supported-20120613.jar`和`gnu-crypto.jar`,我们可以编写Java程序,高效地处理RAR文件,...

    xml自动生成java代码

    总结来说,"xml自动生成java代码"这个话题涵盖了XML的基本概念、DOM解析方法、Android中XML的使用,以及在Android环境下如何通过Java进行文件读写和JNI调用来优化XML处理。理解和熟练掌握这些知识点对于Android...

    mysql-connector-java-5.1.45

    MySQL Connector/J是MySQL数据库与Java应用程序之间的重要桥梁,它是一个实现了Java Database ...通过这些知识点,开发者可以有效地使用`mysql-connector-java-5.1.45`来构建和维护与MySQL数据库交互的Java应用程序。

    castor1.4 xsd生成java

    以下是关于"Castor 1.4 xsd生成java"的相关知识点: 1. **Castor框架**:Castor是一个强大的Java库,它允许开发人员通过简单的XML绑定来实现Java对象和XML之间的转换。它支持JAXB不涵盖的一些功能,比如存储过程...

    JSON Schema 生成库——json-schema-inferrer(java版).rar

    `json-schema-inferrer`库的使用可以分为以下几个关键知识点: 1. **JSON Schema基本概念**:理解JSON Schema的基础概念,包括属性(properties)、类型(type)、枚举(enum)、最大值(maximum)、最小值...

    java Excel转化xml

    #### 核心知识点 1. **Java API 使用** - `org.apache.poi`: 这是用于读取和写入 Microsoft Office 格式文件(如 Excel 和 Word)的 Java 库。 - `org.jdom`: 一个开源的 Java API 用于处理 XML 文档。 2. **...

    面试知识点总结--XML.pdf

    了解以上知识点,对于XML在Java开发中的应用和面试准备具有重要意义。理解不同解析方式的优缺点,以及如何在项目中有效利用XML,可以帮助开发者在职场上展现出扎实的技术基础。同时,解决XML编码问题和掌握解析API的...

    wsdl生成java代码工具

    本篇文章将详细探讨“wsdl生成java代码工具”的相关知识点,以及如何使用这个工具。 1. **WSDL简介**: WSDL文件描述了Web服务的接口,包括服务提供的操作、输入和输出消息的格式,以及服务的位置。它使得开发者...

    Dom4J生成XML的完整方法希望大家能用到

    ### Dom4J生成XML的完整方法详解 在Java开发领域,处理XML文档是常见的需求之一。Dom4J作为一款优秀的Java XML API,...掌握以上知识点,开发者即可熟练运用Dom4J生成复杂的XML文档,满足项目中对XML数据处理的需求。

    springboot+mybatis(mybatis dao与xml文件自动生成)

    在Spring Boot和MyBatis框架集成的开发过程中,自动化生成DAO层接口与对应的XML配置文件可以极大地提高开发效率。下面将详细介绍如何实现这一功能,并深入探讨相关知识点。 首先,Spring Boot是一个快速开发框架,...

Global site tag (gtag.js) - Google Analytics