Android初学笔记——xml文件的读写
2015-06-29 14:48
337 查看
利用XmlSerializer和XmlPullParser对xml文件进行读写操作
下面是XmlSerializer在手机内存中写入xml文件的内容:
下面是XmlPullParser在手机内存中读取xml文件的内容:
下面是XmlSerializer在手机内存中写入xml文件的内容:
public void writeXML(){ File file =new File(this.getFilesDir(), "test.xml"); XmlSerializer s=Xml.newSerializer(); try { FileOutputStream fos = new FileOutputStream(file); s.setOutput(fos, "utf-8"); s.startDocument("utf-8", null); s.startTag(null, "persons"); for(int i=0;i<10;i++){ s.startTag(null, "p"); s.startTag(null, "name"); s.text("啊"+String.valueOf(i)); s.endTag(null, "name"); s.startTag(null, "age"); s.text(String.valueOf(10+i)); s.endTag(null, "age"); s.endTag(null, "p"); } s.endTag(null, "persons"); s.endDocument(); fos.flush(); fos.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
下面是XmlPullParser在手机内存中读取xml文件的内容:
public List<Person> readXML(){ list = null; Person p=null; File file =new File(this.getFilesDir(), "test.xml"); XmlPullParser parser=Xml.newPullParser(); try { FileInputStream fis=new FileInputStream(file); parser.setInput(fis, "utf-8"); int eventType=parser.getEventType(); while(eventType!=XmlPullParser.END_DOCUMENT){ String tagName=parser.getName(); switch (eventType) { case XmlPullParser.START_TAG: if("persons".equals(tagName)){ list=new ArrayList<Person>(); }else if("p".equals(tagName)){ p=new Person(); }else if("name".equals(tagName)){ p.setName(parser.nextText()); }else if("age".equals(tagName)){ p.setAge(Integer.parseInt(parser.nextText())); } break; case XmlPullParser.END_TAG: if("p".equals(tagName)){ list.add(p); } break; default: break; } eventType=parser.next(); } fis.close(); } catch (Exception e) { e.printStackTrace(); } return list; }
相关文章推荐
- android中跨进程通讯的4种方式
- 【MIG专项测试组】如何准确评测Android应用的流畅度?
- Android - Designtime Layout Attributes & Tools Attributes
- Android注册native函数和jave方法的对应关系
- Android——LinearLayout按下(state_pressed)或获取焦点时(state_focused)背景设置不同颜色或图片
- Android类动态加载技术
- Android控件属性大全
- Android 手机影音 开发过程记录(三)
- (七十一)android中一个工程引用另一个工程
- Android开发之Bitmap.Config.RGB_565
- alipay--- Android 集成支付宝SDK实现快捷支付--详解
- [转]AndroidTolls国内镜像
- 篇三、开发前知识补充:Android的长度单位和屏幕分辨率,这个也是转载~~
- Android 禁止输入emoji表情符号
- Android.mk
- android studio 开发 sourcetree (四)
- Android4.2对webview中Javascript不能调用
- Android startActivities()的使用
- 搭建好Android的第一个程序。
- Android: 录音