当前位置:编程学习 > JAVA >>

求帮助,XML

如何将List里面的值取出来循环组装成xml格式的字串 --------------------编程问答-------------------- stringbuffer 自己组装就是了  
定义好头
<?xml version="1.0" encoding="UTF-8"?>
下面的内容随意的很啊 --------------------编程问答-------------------- for循环list内容  自己用字符串,拼接的时候注意各个XML节点 --------------------编程问答-------------------- 将list值用StringBuffer拼 节点名随意取 --------------------编程问答--------------------


这个是数组的,list也一样的方法,没问题吧
import org.dom4j.*;
import org.dom4j.io.*;
import java.io.*;
import java.util.*;
/**
 * 利用dom4j API构造xml文件, 将数据写入.
 * @author Administrator
 *
 */
public class BuildBookDemo {

/**
 * @param args
 */
public static void main(String[] args) {
String[][] data = {
{"1001","武侠","天龙八部","50","金庸","1968","zh"}, 
{"1002","武侠","流行蝴蝶剑","45","古龙","1969","zh"}, 
{"1003","科幻","哈利波特","85","rowling","2005","en"}, 
{"1004","技术","thinking in java","90","bruce","2000","en"}
};
buildBook(data, "mybook.xml");
}
/**
 * 将二维数组的数据输出到filename指定的xml文件中
 * @param data 二维数据
 * @param filename xml文件名
 */
public static void buildBook(
String[][] data, String filename){
//生成文档对象
Document doc = DocumentHelper.createDocument();
//构造根元素
Element rootElmt = doc.addElement("booklist");

//遍历二维数组data, 每个数组元素是一本书
for (String [] book : data){
Element bookElmt 
= rootElmt.addElement("book");

bookElmt.addAttribute("isbn", book[0]);
bookElmt.addAttribute("catalog", book[1]);

//给book增加title子元素
Element titleElmt 
  = bookElmt.addElement("title");
titleElmt.setText(book[2]);

titleElmt.addAttribute("lang", book[6]);

//给book增加price子元素
Element priceElmt
= bookElmt.addElement("price");
priceElmt.setText(book[3]);

//给book增加author子元素
Element authorElmt
= bookElmt.addElement("author");
authorElmt.setText(book[4]);

//给book增加year子元素
Element yearElmt
= bookElmt.addElement("year");
yearElmt.setText(book[5]);


}
//输出doc到指定文件
outputXml(doc, filename);
}
/**
 * 输出doc到指定文件
 * @param doc 要输出的文档对象
 * @param filename 要输出的文件名
 */
private static void outputXml(
Document doc, String filename) {
try {
//filename指定的文件目的地
FileWriter fw = new FileWriter(filename);

//定义xml文件的格式
OutputFormat format 
= OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");

//将doc按format格式写出到fw
XMLWriter xmlWriter 
= new XMLWriter(fw, format);
xmlWriter.write(doc);
xmlWriter.close();

} catch (IOException e) {
e.printStackTrace();
}
}






}


补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,