java 生成xml格式文件6_java 生成xml格式的文件

在开发中,我们需要记录一些信息,比如我在写android应用时 ,喜欢将手机设备信息以xml格式包装,然后邮件形式发送到我的邮箱里。这样有利于调试crash信息

下面介绍怎么用java生成xml格式的文件

首先你需要jdom.jar和dom4j.jar这两个包

/**

* 将crash信息打包成xml格式

* @param hashMap 原始crash信息的hashmap形式

* @throws IOException

* @throws JDOMException

*/

public void BuildXMLDoc(HashMap hashMap) throws IOException, JDOMException {

int size = hashMap.size();

Iterator iter = hashMap.entrySet().iterator();

Map.Entry entry;

String key;

String val;

int id = 1;

// 创建根节点 list;

Element root = new Element("phoneInfo");

// 根节点添加到文档中;

Document Doc = new Document(root);

// 此处 迭代器的遍历 可替换成循环遍历 数据库表的结果集操作;

while (iter.hasNext()) {

entry = (Map.Entry)iter.next();

key = (String)entry.getKey();

val = hashMap.get(key);

if (val == null || val.length() == 0)

{

val = "null";

}

// 创建节点 user;

Element elements = new Element("category");

// 给 user 节点添加属性 id;

elements.setAttribute("id", "" + id);

id ++;

// 给 user 节点添加子节点并赋值;

// new Element("name")中的 "name" 替换成表中相应字段,setText("xuehui")中 "xuehui

// 替换成表中记录值;

elements.addContent(new Element(key).setText(val));

// 给父节点list添加user子节点;

root.addContent(elements);

}

//带有缩进格式的xml 更美观

Format format = Format.getPrettyFormat();

XMLOutputter XMLOut = new XMLOutputter(format);

XMLOut.output(Doc, new FileOutputStream(FileUtil.CRASHPATH));

System.out.println("完成了文件写入");

}

上面虽然是对hashmap的遍历,但是对于其他容器的遍历形式不变,只是换成你需要的信息即可

下面是其他文章找到的

生成XML的时候,处理特殊字符

element.addContent(new CDATA(" content"));

生成XML的时候,设置编码

XMLOutputter XMLOut = new XMLOutputter();

XMLOut.setEncoding("gb2312");

XMLOut.output(Doc, new FileOutputStream("test1.xml"));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值