// xml序列化器
XmlSerializer serializer = Xml.newSerializer();
File file =
new
File(Environment.getExternalStorageDirectory(),
"test.xml"
);
FileOutputStream fileOutputStream =
null
;
try
{
fileOutputStream =
new
FileOutputStream(file);
// 输出流的编码格式
serializer.setOutput(fileOutputStream,
"utf-8"
);
// 设置xml文件的编码格式,
/*
* 第二个参数trues生成 tandalone='yes' false 则生成tandalone='no' 值 no 表示这个
* XML 文档不是独立的而是依赖于外部所定义的一个 DTD. 值 yes 表示这个 XML
* 文档是自包含的(self-contained).
*/
serializer.startDocument(
"utf-8"
,
true
);
//设置xml 命名空间和根元素
serializer.startTag(
null
,
"Test"
);
for
(
int
i =
0
; i <
10
; i++) {
serializer.startTag(
null
,
"Info"
);
serializer.attribute(
null
,
"id"
, String.valueOf(i));
serializer.startTag(
null
,
"body"
);
serializer.text(
"测试数据: "
+ TestEdit.getText() + i);
serializer.endTag(
null
,
"body"
);
serializer.startTag(
null
,
"body_1"
);
serializer.text(
"测试数据: "
+ TestEdit.getText() + i);
serializer.endTag(
null
,
"body_1"
);
serializer.endTag(
null
,
"Info"
);
}
serializer.endTag(
null
,
"Test"
);
serializer.endDocument();
fileOutputStream.flush();
fileOutputStream.close();
fileOutputStream =
null
;
Toast.makeText(getApplicationContext(),
"写入成功!"
,
0
).show();
}
catch
(FileNotFoundException e) {
e.printStackTrace();
}
catch
(IllegalArgumentException e) {
e.printStackTrace();
}
catch
(IllegalStateException e) {
e.printStackTrace();
}
catch
(IOException e) {
e.printStackTrace();
}