標籤:xml
1、得到xml序列化器
XmlSerializer serializer = Xml.newSerializer();
2、確定要產生的xml檔案的存放的位置,將流對象對應到檔案儲存體的位置
File file = new File(Environment.getExternalStorageDirectory(), "backup.xml");
FileOutputStream os = new FileOutputStream(file);
3、設定xml序列化器的輸入資料流對象和編碼格式
serializer.setOutput(os, "utf-8");
4、設定xml檔案的聲明資訊
serializer.startDocument("utf-8", true);
5、設定xml檔案的根標籤
serializer.startTag(null, "smss");
6、設定每一個對象的開始標籤
for (SmsInfo info : smsInfos)
{
serializer.startTag(null, "sms");
serializer.attribute(null, "id", info.getId() + "");//設定標籤的屬性資訊
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, "body");
serializer.text(info.getBody());
serializer.endTag(null, "body");
serializer.startTag(null, "date");
serializer.text(info.getDate() + "");
serializer.endTag(null, "date");
serializer.endTag(null, "sms");
}
7、設定xml檔案的結束標籤
serializer.endTag(null, "smss");
8、設定xml檔案的接受資訊
serializer.endDocument();
9、關閉檔案的寫入流
os.close();
下面是產生的xml檔案
<smss>
<sms id="0">
<address>13500000000</address>
<type>1</type>
<body>簡訊內容0</body>
<date>1415199223241</date>
</sms>
<sms id="1">
<address>13500000001</address>
<type>1</type>
<body>簡訊內容1</body>
<date>1415199223241</date>
</sms>
</smss>
XML檔案產生的幾個步驟