android XML文件序列化
XML 在Android中应用的相当多啊,所以掌握一些XML的序列化及解析还是很有必要的。
XmlSerializer serializer = Xml.newSerializer(); //生成一个XML 序列化器
File file = new File(Environment.getExternalStorageDirectory(),"backup.xml");
FileOutputStream fos = new FileOutputStream(file);
serializer.setOutput(fos, "UTF-8"); //指定生成的XML文件位置
serializer.startDocument("UTF-8", true); //xml文件头 utf-8指编码方式 true指此文件是否独立
serializer.startTag(null, "bookselves");
serializer.startTag(null, "book"); //生成book tag头
serializer.attribute(null, "id", "tp312-a"); //book 属性 id
serializer.startTag(null, "name"); //生成name tag头
serializer.text("xiaowang"); //name text值 xiaowang
serializer.endTag(null, "name"); //生成name tag尾
serializer.startTag(null, "type");
serializer.text("artist");
serializer.endTag(null, "type");
serializer.startTag(null, "price");
serializer.text("$88");
serializer.endTag(null, "price");
serializer.startTag(null, "telephone");
serializer.text("111123123");
serializer.endTag(null, "telephone");
serializer.endTag(null, "book");
serializer.endTag(null, "bookselves");
serializer.endDocument();
//xml 结束序列化(类似于对象析构或CloseHandle()) fos.close();
最后生成这样的一个XML
<?xml version = "1.0" encoding = "utf-8"?>
<bookselves>
<book id = "tp312-a">
<name>xiaowang</name>
<type>artist</name>
<price>&88</price>
<telephone>111123123</telephone>
</book>
</boolselves>