在前面的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文件夹下,如下:

还可以将这个文件从File Explorer中导出到电脑中查看XML文档的具体内容,与输出的字符串完全一样。 总结说明
XML文件的写入就完成了,想必大家对串行化也有应该有一些了解,具体的需要引用那些package请大家到Android SDK去仔细查看吧。

更多相关文章

  1. Android中使用SAX方式解析XML文件
  2. android 模拟器手机如何添加文件到sd卡
  3. Android轻量级存储源码分析
  4. 混淆Android(安卓)JAR包的方法
  5. Android数据存储方式
  6. android 命令行安装apk
  7. Android项目结构
  8. Android(安卓)Java调用ffmpeg命令
  9. NPM 和webpack 的基础使用

随机推荐

  1. Google C2Dm相关文章
  2. Android自定义Button背景色,弧度
  3. JavaCV & Android
  4. network: android 网络判断
  5. android开发遇到的问题
  6. Android(安卓)滚动Tab
  7. 写在20111112:单行可滚动显示的GridView
  8. Android(安卓)layout 设置圆角 内部 imag
  9. Android导航滑动文字渐变+底部指示条
  10. android 7.1 默认壁纸拉伸问题