您的位置:首页 > 移动开发 > Android开发

Android笔记使用Pull解析器生成XML文件

2015-01-09 15:48 495 查看
有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中;或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,这里推荐大家使用Pull解析器。XmlSerializer





/**
* 第二种方式生成xml文件
*
* @param view
*/
public void backSms2(View view) {
try {
XmlSerializer serializer = Xml.newSerializer();
File file = new File(Environment.getExternalStorageDirectory(),
"backup2.xml");
FileOutputStream os = new FileOutputStream(file);
// 初始化序列化器指定xml数据写入到哪个文件 并且指定文件的编码方式
serializer.setOutput(os, "utf-8");
serializer.startDocument("utf-8", true);
serializer.startTag(null, "smss");

for (SmsInfo info : smsInfos) {
serializer.startTag(null, "sms");
serializer.attribute(null, "id", info.getId() + "");

serializer.startTag(null, "body");
serializer.text(info.getBody());
serializer.endTag(null, "body");

serializer.startTag(null, "address");
serializer.text(info.getAddress());
serializer.endTag(null, "address");

serializer.startTag(null, "type");
serializer.text(info.getType() + "");
serializer.endTag(null, "type");

serializer.startTag(null, "date");
serializer.text(info.getDate() + "");
serializer.endTag(null, "date");

serializer.endTag(null, "sms");
}

serializer.endTag(null, "smss");
serializer.endDocument();
os.close();
Toast.makeText(this, "短信备份成功!", 0).show();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
Toast.makeText(this, "短信备份失败!", 0).show();
}
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: