我的位置: 首頁 > 學習專區 > 安卓技術 > Android使用Pull解析器生成XML文件

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

2012-01-31 11:05:00
來源:
[導讀] 有些時候,我們需要生成一個XML文件,生成XML文件的方法有很多,如:可以只使用一個StringBuilder組拼XML內容,然后把內容寫入到文件中;或

有些時候,我們需要生成一個XML文件,生成XML文件的方法有很多,如:可以只使用一個StringBuilder組拼XML內容,然后把內容寫入到文件中;或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,這里推薦大家使用Pull解析器。

使用Pull解析器生成一個與itcast.xml文件內容相同的myitcast.xml文件

使用代碼如下(生成XML文件):

File xmlFile = new File(“myitcast.xml”);

FileOutputStream outStream = new FileOutputStream(xmlFile);

OutputStreamWriter outStreamWriter = new OutputStreamWriter(outStream, “UTF-8″);

BufferedWriter writer = new BufferedWriter(outStreamWriter);

writeXML(persons, writer);

writer.flush();

writer.close();

如果只想得到生成的xml內容,可以使用StringWriter:

StringWriter writer = new StringWriter();

writeXML(persons, writer);

String content = writer.toString();

代碼:

public static String writeXML(List persons, Writer writer){

XmlSerializer serializer = Xml.newSerializer();

try {

serializer.setOutput(writer);

serializer.startDocument(“UTF-8″, true);

//第一個參數為命名空間,如果不使用命名空間,可以設置為null

serializer.startTag(“”, “persons”);

for (Person person : persons){

serializer.startTag(“”, “person”);

serializer.attribute(“”, “id”, person.getId().toString());

serializer.startTag(“”, “name”);

serializer.text(person.getName());

serializer.endTag(“”, “name”);

serializer.startTag(“”, “age”);

serializer.text(person.getAge().toString());

serializer.endTag(“”, “age”);

serializer.endTag(“”, “person”);

}

serializer.endTag(“”, “persons”);

serializer.endDocument();

return writer.toString();

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

評論
熱點專題
>>
相關文章推薦
>>
好吊妞免费视频在线观看,久久亚洲国产人成综合网,久久精品国产2020,欧美精品综合在线
亚洲一区二区制服在线 | 亚洲日韩国产欧美另类 | 夜夜揉揉日日人人青青 | 亚洲国产精品久久久天堂不卡海量 | 激情综合五月天在线观看 | 亚洲欧美卡通在线另类 |