在前面的2篇文章 Android读写XML(上)―― package说明 、 Android读写XML(中)―― SAX 中想必大家对XML文件读取的方法已经比较熟悉了,在这里我们就不多说了,直接说明如何将信息写成XML文件,首先介绍Andoid SDK中的相关类。 类 说明
XmlSerializer Define an interface to serialziation of XML Infoset.定义一个接口来实现XML信息的串行化。 什么是串行化?
对象的串型化,也有叫做对象的序列话,并不只是简单的把对象保存在存储器上,它可以使我们在流中传输对象,使对象变的可以像基本数据一样传递。 下面,我们就直接来看个具体的例子来说明,如何使用XmlSerializer。
        
  1. privateStringwriteXml(){
  2. XmlSerializerserializer=Xml.newSerializer();
  3. StringWriterwriter=newStringWriter();
  4. try{
  5. serializer.setOutput(writer);
  6. //<?xmlversion=”1.0″encoding=”UTF-8″standalone=”yes”?>
  7. serializer.startDocument(”UTF-8″,true);
  8. //<blognumber=”1″>
  9. serializer.startTag(”",”blog”);
  10. serializer.attribute(”",”number”,String.valueOf(1));
  11. //<messagedata=”2009-09-23″>
  12. serializer.startTag(”",”message”);
  13. serializer.attribute(”",”date”,”2009-09-23″);
  14. //<title>AndroidXML</title>
  15. serializer.startTag(”",”title”);
  16. serializer.text(”AndroidXML”);
  17. serializer.endTag(”",”title”);
  18. //<url>http://www.moandroid.com/?p=508</url>
  19. serializer.startTag(”",”url”);
  20. serializer.text(”http://www.moandroid.com/?p=508″);
  21. serializer.endTag(”",”url”);
  22. //</message>
  23. serializer.endTag(”",”message”);
  24. //</blog>
  25. serializer.endTag(”",”blog”);
  26. serializer.endDocument();
  27. returnwriter.toString();
  28. }
  29. catch(Exceptione)
  30. {
  31. thrownewRuntimeException(e);
  32. }
  33. }
我们先将writeXml()产生的字符串输出 ,看是否是按照我们设计的那样,使用Log.v(“XML”, writeXml())输出调试信息。运行程序,在DDMS中查看程序输出的调试信息,如何查看调试信息请阅读Android DDMS如何使用?
输出的字符串如下:
        
  1. <?xmlversion=”1.0″encoding=”UTF-8″standalone=”yes”?>
  2. <blognumber=”1″>
  3. <messagedata=”2009-09-23″>
  4. <title>AndroidXML</title>
  5. <url>http://www.moandroid.com/?p=508</url>
  6. </message>
  7. </blog>
看了运行的结果,对于上面代码的功能,估计大家就明白了,不再这里详细解析。
下面,进一步将字符串写入文件 ,代码如下:
        
  1. publicbooleanWrite(Stringpath,Stringtxt)
  2. {
  3. try
  4. {
  5. OutputStreamos=openFileOutput(path,MODE_PRIVATE);
  6. OutputStreamWriterosw=newOutputStreamWriter(os);
  7. osw.write(txt);
  8. osw.close();
  9. os.close();
  10. }
  11. catch(FileNotFoundExceptione)
  12. {
  13. returnfalse;
  14. }
  15. catch(IOExceptione)
  16. {
  17. returnfalse;
  18. }
  19. returntrue;
  20. }
  21. }

在onCreate()中增加如下代码:Write(”blog.xml”,writeXml())。运行程序,打开DDMS查看写入的XML文档,文件存放在data/data/{package}/files文件夹下,如下:
Android读写XML(下)――创建XML文档_第1张图片
还可以将这个文件从File Explorer中导出到电脑中查看XML文档的具体内容,与输出的字符串完全一样。 总结说明
XML文件的写入就完成了,想必大家对串行化也有应该有一些了解,具体的需要引用那些package请大家到Android SDK去仔细查看吧。

更多相关文章

  1. Android读写文件正确实行方法介绍
  2. android字符串资源字符format
  3. 修改Android中的文件权限
  4. Android录音文件在IOS上播放不出来的问题
  5. Retrofit系列文章翻译7—在请求体里发送对象
  6. 几行代码看程序员的水平——Android文件命名规范
  7. Android — 创建文件及文件夹
  8. Android文件选择器的实例分享
  9. Android的程序解码与XML文件解码

随机推荐

  1. 浅谈踢人下线的设计思路!(附代码实现方案)
  2. 深入探索Redis的五种基础数据类型
  3. C语言学习笔记 第三天
  4. KMP算法的JAVA实现
  5. 太赞了!机器学习基础核心算法:贝叶斯分类!(
  6. 原子操作是如何实现的?
  7. Docker学习笔记:(1)Docker基础知识
  8. 用sa-token轻松解决网站权限验证
  9. Java中的 Switch 是如何支持 String 的?为
  10. sa-token v1.8.0 版本已发布,带来大量激动