android xmlpull方式解析存储xml

来源:互联网 发布:郑州大数据产业园 编辑:程序博客网 时间:2024/05/18 01:41

org.xmlpull包下分别提供了XmlPullParser解析xml和XmlSerializer写入xml,十分方便,以下是简单用法示例。

XmlPullParser解析file文件,并存入models中,XmlPullParser解析到每个xml标签都会产生一个事件

Set<String> models = new HashSet<String>();XmlPullParser parser = Xml.newPullParser();InputStream in = new FileInputStream(file);parser.setInput(in, "UTF-8");int event = parser.getEventType();while (event != XmlPullParser.END_DOCUMENT) {switch (event) {case XmlPullParser.START_DOCUMENT:break;case XmlPullParser.START_TAG:if ("model".equals(parser.getName())) {models.add(parser.nextText());}break;default:break;}event = parser.next();}return models;


XmlSerializer写入xml 文件

File file = new File(getApplicationContext().getFilesDir(),XML_FILE_NAME);FileOutputStream fos = new FileOutputStream(file);XmlSerializer xmlSerializer = Xml.newSerializer();xmlSerializer.setOutput(fos, "UTF-8");xmlSerializer.startDocument(null, true);xmlSerializer.startTag(null, "models");for (int i = 0; i < obj.length(); i++) {xmlSerializer.startTag(null, "model");xmlSerializer.text(obj.getString(i));xmlSerializer.endTag(null, "model");}xmlSerializer.endTag(null, "models");xmlSerializer.endDocument();




0 0