安卓开发之利用XmlSerializer生成XML文件

 1 package com.lidaochen.phonecall;
 2
 3 import android.net.Uri;
 4 import android.os.Environment;
 5 import android.support.v7.app.AppCompatActivity;
 6 import android.os.Bundle;
 7 import android.util.Log;
 8 import android.util.Xml;
 9 import android.view.View;
10 import android.widget.Button;
11 import android.widget.TabHost;
12 import android.widget.ThemedSpinnerAdapter;
13 import android.widget.Toast;
14
15 import org.xmlpull.v1.XmlSerializer;
16
17 import java.io.File;
18 import java.io.FileOutputStream;
19 import java.util.ArrayList;
20 import java.util.List;
21
22 public class MainActivity extends AppCompatActivity{
23     private List<Sms> smsLists;
24     @Override
25     protected void onCreate(Bundle savedInstanceState) {
26         super.onCreate(savedInstanceState);
27         setContentView(R.layout.activity_main);
28         // 初始化我们要备份的数据
29         smsLists = new ArrayList<Sms>();
30         for (int i = 0; i < 10; i++)
31         {
32             Sms sms = new Sms();
33             sms.setAddres("10000" + i);
34             sms.setBody("Hello" + i);
35             sms.setDate("500" + i);
36             // 把sms对象加入到集合中
37             smsLists.add(sms);
38         }
39     }
40     // 按钮点击事件
41     public void click(View v)
42     {
43         try{
44             // 1、通过Xml这个工具类去获取XmlSerializer类的实例
45             XmlSerializer serializer = Xml.newSerializer();
46             // 2、设置XmlSerializer序列化器参数
47             File file = new File(Environment.getExternalStorageDirectory().getPath(), "LiDaochen.xml");
48             FileOutputStream fos = new FileOutputStream(file);
49             serializer.setOutput(fos, "utf-8");
50             // 3、写xml文档开头
51             serializer.startDocument("utf-8", true);
52             // 4、写xml根节点
53             serializer.startTag(null, "smss");
54             for(Sms sms:smsLists)
55             {
56                 serializer.startTag(null, "sms");
57                 // address节点
58                 serializer.startTag(null, "addres");
59                 serializer.text(sms.getAddres());
60                 serializer.endTag(null, "addres");
61                 // body节点
62                 serializer.startTag(null, "body");
63                 serializer.text(sms.getBody());
64                 serializer.endTag(null, "body");
65                 // date节点
66                 serializer.startTag(null, "date");
67                 serializer.text(sms.getDate());
68                 serializer.endTag(null, "date");
69                 serializer.endTag(null, "sms");
70             }
71             // 文档结尾
72             serializer.endTag(null, "smss");
73             serializer.endDocument();
74             // 关闭流
75             fos.close();
76         }
77         catch (Exception e)
78         {
79             e.printStackTrace();
80         }
81     }
82 }
 1 package com.lidaochen.phonecall;
 2
 3 public class Sms {
 4     private String addres;
 5     private String body;
 6     private String date;
 7
 8     public String getAddres() {
 9         return addres;
10     }
11
12     public String getBody() {
13         return body;
14     }
15
16     public String getDate() {
17         return date;
18     }
19
20     public void setAddres(String addres) {
21         this.addres = addres;
22     }
23
24     public void setBody(String body) {
25         this.body = body;
26     }
27
28     public void setDate(String date) {
29         this.date = date;
30     }
31 }

原文地址:https://www.cnblogs.com/duxie/p/10887362.html

时间: 2024-11-10 21:57:02

安卓开发之利用XmlSerializer生成XML文件的相关文章

XmlSerializer 生成xml文件

1 /** 2 * XmlSerializer xml序列化器 3 */ 4 //创建xmlSerializer 5 XmlSerializer serializer = Xml.newSerializer(); 6 File file = new File(MainActivity.this.getFilesDir(), "config.xml"); 7 FileOutputStream fos; 8 try { 9 fos = new FileOutputStream(file);

Java利用dom4j生成xml文件

package com.fq.fanqi; import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.io.StringWriter;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.dom4j.io.OutputFormat;import org.

使用XML序列化器生成XML文件和利用pull解析XML文件

首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message> <sms> <body> 陈驰0 </body> <date> 1462162910995 </date> <address> 1380 </address> <type> 1 </type> &

利用oxygen编辑并生成xml文件,并使用JAVA的JAXB技术完成xml的解析

首先下载oxygen软件(Oxygen XML Editor),目前使用的是试用版(可以安装好软件以后get trial licence,获得免费使用30天的权限,当然这里鼓励大家用正版软件!!!) 1 首先建立一个空白XML文件,直接点击下图所示即可: 2 可以使用xml文本编辑界面,或者使用xml树状图编辑界面 切换到xml树状图编辑界面的方法为: 即可调出当前xml文件所对应的xml树状图编辑界面 3 设计并编辑xml文件 根据自己的需要可以利用xml树状图操作界面来方便的设计自己的xml

跨平台支持的WebService接口Demo,利用xstream快速解析和生成xml文件

原文:跨平台支持的WebService接口Demo,利用xstream快速解析和生成xml文件 源代码下载地址:http://www.zuidaima.com/share/1591110000167936.htm 这个是我本人写的CXF的WebService的一个正在项目中使用的程序, 支持跨平台,经测试,java和C#客户端能正常使用,其中利用Xstream生成和解析xml,不需要修改对象;支持内部私有字段,直接根据生成java类生成xml,反过来根据xml生成java类. 运行说明: 部署到

使用Pull解析器生成XML文件和读取xml文件

有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,这里推荐大家使用Pull解析器. 一.布局界面 [html] view plaincopyprint? <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

Android学习之XML数据的三种解析方式以及生成XML文件

首先,我得声明,本博客的思想主要参考了此博客:http://blog.csdn.net/liuhe688/article/details/6415593 不过代码我自己一句句敲的 好了,首先讲一下解析XML的三种方式:(恕我粘贴一下哈) SAX解析器: SAX(Simple API for XML)解析器是一种基于事件的解析器,它的核心是事件处理模式,主要是围绕着事件源以及事件处理器来工作的.当事件源产生事件后,调用事件处理器相应的处理方法,一个事件就可以得到处理.在事件源调用事件处理器中特定方

Java生成XML文件

<Java眼中的XML ---文件写入> 四种方法用Java生成一个XML文件. 1.通过DOM方式生成XML文档 import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transfo

使用Pull解析器生成XML文件

有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,这里推荐大家使用Pull解析器. 1.使用Pull解析器生成一个与itcast.xml文件内容相同的myitcast.xml文件,代码在下方 public static String writeXML(List<Person> persons, Writer wri