Android读写XML(下)——创建XML文档

转载 2011年01月24日 14:59:00

本文转载自:http://www.moandroid.com/?p=868 ,如有转载请声明原出处!

 

在前面的2篇文章Android读写XML(上)——package说明Android读写XML(中)——SAX中想必大家对XML文件读取的方法已经比较熟悉了,在这里我们就不多说了,直接说明如何将信息写成XML文件,首先介绍Andoid SDK中的相关类。

说明
XmlSerializer Define an interface to serialziation of XML Infoset.定义一个接口来实现XML信息的串行化。

什么是串行化?

对象的串型化,也有叫做对象的序列话,并不只是简单的把对象保存在存储器上,它可以使我们在流中传输对象,使对象变的可以像基本数据一样传递。

下面,我们就直接来看个具体的例子来说明,如何使用XmlSerializer。
private String writeXml(){
XmlSerializer serializer = Xml.newSerializer();
StringWriter writer = new StringWriter();
try{
serializer.setOutput(writer);

// <?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>
serializer.startDocument(“UTF-8″,true);

// <blog number=”1″>
serializer.startTag(“”,”blog”);
serializer.attribute(“”,”number”,String.valueOf(1));

//<message data=”2009-09-23″>
serializer.startTag(“”,”message”);
serializer.attribute(“”,”date”,”2009-09-23″);

// <title>Android XML</title>
serializer.startTag(“”,”title”);
serializer.text(“Android XML”);
serializer.endTag(“”,”title”);

// <url>http://www.moandroid.com/?p=508</url>
serializer.startTag(“”,”url”);
serializer.text(“http://www.moandroid.com/?p=508″);
serializer.endTag(“”,”url”);

//</message>
serializer.endTag(“”,”message”);
// </blog>
serializer.endTag(“”,”blog”);
serializer.endDocument();
return writer.toString();
}
catch(Exception e)
{
throw new RuntimeException(e);
}
}

我们先将writeXml()产生的字符串输出,看是否是按照我们设计的那样,使用Log.v(“XML”, writeXml())输出调试信息。运行程序,在DDMS中查看程序输出的调试信息,如何查看调试信息请阅读Android DDMS如何使用?
输出的字符串如下:
<?xml version=”1.0″ encoding=”UTF-8″ standalone=”yes”?>
<blog number=”1″>
<message data=”2009-09-23″>
<title>Android XML</title>
<url>http://www.moandroid.com/?p=508</url>
</message>
</blog>
看了运行的结果,对于上面代码的功能,估计大家就明白了,不再这里详细解析。
下面,进一步将字符串写入文件,代码如下:
public boolean Write(String path,String txt)
{
try
{
OutputStream os = openFileOutput(path,MODE_PRIVATE);
OutputStreamWriter osw=new OutputStreamWriter(os);
osw.write(txt);
osw.close();
os.close();
}
catch(FileNotFoundException e)
{
return false;
}
catch(IOException e)
{
return false;
}
return true;
}
}

在onCreate()中增加如下代码:Write(“blog.xml”,writeXml())。运行程序,打开DDMS查看写入的XML文档,文件存放在data/data/{package}/files文件夹下,如下:
BlogXML
还可以将这个文件从File Explorer中导出到电脑中查看XML文档的具体内容,与输出的字符串完全一样。

总结说明

XML文件的写入就完成了,想必大家对串行化也有应该有一些了解,具体的需要引用那些package请大家到Android SDK去仔细查看吧。

Java创建以及读写xml文档(dom方式)

package myXML; import org.w3c.dom.*; import org.xml.sax.*; import java.io.*; import javax.xml.par...

Java读写xml文档

  • 2013年12月16日 22:11
  • 495KB
  • 下载

DOM、SAX、JDOM、DOM4J读写xml文档

  • 2015年12月04日 19:42
  • 16KB
  • 下载

C#读写XML文档

题记:目前在制作一个工具,需要使用的XML文档,因此读取和写入文档是个十分重要的,今天进行了一下探索,在这里记录一下,以作为笔记。   C#读取XML文档 使用XMLDocument对象,可以很方便的...

java读写xml文档_dom4j.jar

  • 2009年04月16日 14:19
  • 294KB
  • 下载

使用java读写xml文档

  • 2009年11月25日 23:44
  • 2KB
  • 下载

python-21-如何读写json数据?如何解析简单的xml文档?

这里老师讲了一个小例子,调用百度的语音识别API来实现语音识别。大概过程是: 录音 获取token 语音识别 import json# dumps方法可以把一个python对象转换成json的字符串 ...

MFC Markup类的使用 读写XML文档

  • 2011年01月15日 23:24
  • 10.17MB
  • 下载

iOS中如何利用GDataXML对XML文档进行读写

Let's read and write this!本文译自:raywenderlich 在上一篇文章:在iOS工程中如何选择最佳的XML解析器中,Saliom建议我写一篇文章介绍一下如何使...

介绍如何用C#.NET读写XML文档资料

XML是目前最常用的通用数据传输与处理接口类型。。    
  • snow416
  • snow416
  • 2011年05月09日 21:36
  • 786
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android读写XML(下)——创建XML文档
举报原因:
原因补充:

(最多只允许输入30个字)