import java.io.FileOutputStream;
import java.io.IOException;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class CreateXML {

Book[] books = new Book[] { new Book("1", "唐诗三百首"),
            new Book("2", "Think in Java"), new Book("3", "神雕侠侣"),
            new Book("4", "葵花宝典") };

public void buildXMLDoc() throws IOException, JDOMException {
        // 创建根节点 并设置它的属性 ;
        Element root = new Element("books").setAttribute("count", "4");
        // 将根节点添加到文档中;
        Document doc = new Document(root);

for (int i = 0; i < books.length; i++) {
            // 创建节点 book;
            Element elements = new Element("book");
            // 给 book 节点添加子节点并赋值;
            elements.addContent(new Element("id").setText(books[i].getId()));
            elements.addContent(new Element("name").setText(books[i].getName()));
            //
            root.addContent(elements);
        }
        // 输出 books.xml 文件;
        // 使xml文件 缩进效果
        Format format = Format.getPrettyFormat();
        XMLOutputter xmlOut = new XMLOutputter(format);
       xmlOut.output(doc, new FileOutputStream("c:/books.xml"));
    }

public static void main(String[] args) {
        try {
            CreateXML createXML = new CreateXML();
            System.out.println("正在生成 books.xml 文件...");
            createXML.buildXMLDoc();
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println("c:/books.xml 文件已生成");
    }

class Book {
        private String id;
        private String name;

public Book(String id, String name) {
            super();
            this.id = id;
            this.name = name;
        }

public String getId() {
            return id;
        }

public void setId(String id) {
            this.id = id;
        }

public String getName() {
            return name;
        }

public void setName(String name) {
            this.name = name;
        }
    }
}

生成XML文件的更多相关文章

  1. Android 解析XML文件和生成XML文件

    解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...

  2. Java生成XML文件

    我们在数据库中的数据可以将其提取出来生成XML文件,方便传输.例如数据库中有Admin这张表: 我们写一个java类表示admin数据: package xmlDom.vo; import java. ...

  3. Android 使用xml序列化器生成xml文件

    在<Android 生成xml文件>一文中使用流的形式写入xml格式文件,但是存在一定的问题,那就是在短信内容中不能出现<>之类的括号,本文使用xml序列化器来解决 xml序列 ...

  4. C# 生成xml文件

    本篇文章旨在.net环境下生成xml文件,以控制台应用程序为例进行说明. 1.在vs中新建控制台应用程序CreateXml 2.CreateXmlFile:主要生成xml的函数 public void ...

  5. 视频播放实时记录日志并生成XML文件

    需求描述: 在JWPlayer视频播放过程中,要求实时记录视频观看者播放.暂停的时间,并记录从暂停到下一次播放时所经过的时间.将所有记录保存为XML文件,以方便数据库的后续使用. 实现过程: 尝试1: ...

  6. 使用XML序列化器生成XML文件和利用pull解析XML文件

    首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message&g ...

  7. LINQ to XML 从逗号分隔值 (CSV) 文件生成 XML 文件

    参考:http://msdn.microsoft.com/zh-cn/library/bb387090.aspx 本示例演示如何使用 语言集成查询 (LINQ) 和 LINQ to XML 从逗号分隔 ...

  8. 生成XML文件,通过实体生成XML文件

    实体 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xm ...

  9. PHP中的生成XML文件的4种方法(转)

    <?xml version="1.0" encoding="utf-8"?> <article> <item> <ti ...

  10. 使用XMl序列化器生成xml文件

    生成XML文件 创建几个虚拟的短信对象,存在list中 备份数据通常都是备份至sd卡 使用StringBuffer拼接字符串 把整个xml文件所有节点append到sb对象里 sb.append(&q ...

随机推荐

  1. ZOJ 3781 Paint the Grid Reloaded(BFS)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3781 Leo has a grid with N rows an ...

  2. 11. 星际争霸之php设计模式--备忘模式

    题记==============================================================================本php设计模式专辑来源于博客(jymo ...

  3. 【转】DPM--对象检测开山之作

    本文非原创,原文转载自:http://blog.csdn.net/ttransposition/article/details/12966521 DPM(Deformable Parts Model) ...

  4. 微信端应用 ionic实现texarea 自适应高度

    最近公司项目,做微信端用到texarea 需要实现自适应高度的功能 当然自适应高度的方法很多网上找一大片,最直接的方式就是在使用到texarea的controller中添加js代码事件来实现,这中方式 ...

  5. 马哥教育视频笔记:01(Linux常用命令)

    1.查看缓存中使用的命令和命令路径 [wskwskwsk@localhost /]$ hash 命中 命令 /usr/bin/printenv /usr/bin/ls /usr/bin/clear 2 ...

  6. Java堆栈的应用2----------中缀表达式转为后缀表达式的计算Java实现

    1.堆栈-Stack 堆栈(也简称作栈)是一种特殊的线性表,堆栈的数据元素以及数据元素间的逻辑关系和线性表完全相同,其差别是线性表允许在任意位置进行插入和删除操作,而堆栈只允许在固定一端进行插入和删除 ...

  7. 用代码来理解 C#委托与事件

    C#中委托是什么?事件是委托吗? 1.委托是讲方法作为参数代入另一个方法中, 委托可以理解为指向一个函数的引用. class Program { public delegate void Delega ...

  8. 红字差评系列2.dwarf

    [题目分析] 首先按照题目给出的样例想到只要每个物品的价格都用能够合成他的两个物品来更新,一边读入一边更新就好了,后来又发现如果出现这样的情况:1 2 3在2 5 6 的前面,那我们就需要先更新2在更 ...

  9. 使用ajax登录格式

    登录页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  10. 我的android学习经历37

    android虚拟机没有键盘的问题,那是因为建立虚拟机的时候没有选择skin,重新编辑选择skin就可以了