XmlSerializer

    //使用XmlSerializer来序列化xml文件

    public static boolean backupSms_android(Context context){

        

        try{

            

            //0.获取短信数据

            ArrayList<SmsBean> allSms = SmsDao.getAllSms();

            //1.通过Xml获取一个XmlSerializer对象

            XmlSerializer xs = Xml.newSerializer();

            //2.设置XmlSerializer的一些参数,比如:设置xml写入到哪个文件中

            //os:xml文件写入流   encoding:流的编码

            xs.setOutput(context.openFileOutput("backupsms2.xml", Context.MODE_PRIVATE), "utf-8");

            //3.序列化一个xml的声明头

            //encoding:xml文件的编码  standalone:是否独立

            xs.startDocument("utf-8", true);

            //4.序列化一个根节点的开始节点

            //namespace:命名空间  name: 标签的名称

            xs.startTag(null, "Smss");

            //5.循环遍历list集合序列化一条条短信

            

                for (SmsBean smsBean : allSms) {

                    xs.startTag(null, "Sms");

                    //name:属性的名称  value:属性值

                    xs.attribute(null, "id", smsBean.id+"");

                    

                    xs.startTag(null, "num");

                    //写一个标签的内容

                    xs.text(smsBean.num);

                    xs.endTag(null, "num");

                    

                    

                    xs.startTag(null, "msg");

                    xs.text(smsBean.msg);

                    xs.endTag(null, "msg");

                    

                    

                    xs.startTag(null, "date");

                    xs.text(smsBean.date);

                    xs.endTag(null, "date");

                    

                    xs.endTag(null, "Sms");

                }



            //6.序列化一个根节点的结束节点

                xs.endTag(null, "Smss");

            //7.将xml写入到文件中,完成xml的序列化

                xs.endDocument();

                return true;



        }catch (Exception e) {

            e.printStackTrace();

        }

        return false;

    }

Android生成xml的更多相关文章

  1. Android 生成xml文件

    生成XML文件备份短信,其格式为: <?xml version="1.0" encoding="UTF-8" standalone="true& ...

  2. Android 生成xml文件及xml的解析

    1.生成xml文件的两种方式 (1)采用拼接的方式生成xml(不推荐使用) (2)利用XmlSerializer类生成xml文件 package com.example.lucky.test52xml ...

  3. Android 使用xml序列化器生成xml文件

    在<Android 生成xml文件>一文中使用流的形式写入xml格式文件,但是存在一定的问题,那就是在短信内容中不能出现<>之类的括号,本文使用xml序列化器来解决 xml序列 ...

  4. Android 解析XML文件和生成XML文件

    解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...

  5. Android 下用 Pull 解析和生成 XML

    Java 中是可以用 SAX 和 DOM 解析 XML  的,虽然在 Android 下也可以用这2中方式,但是还是推荐用 Pull.Pull 使用简单,效率相对高,Android 下是集成了 Pul ...

  6. Android中XML文件的序列化生成与解析

    xml文件是非常常用的,在android中json和xml是非常常用的两种封装数据的形式,从服务器中获取数据也经常是这两种形式的,所以学会生成和解析xml和json是非常有用的,json相对来说是比较 ...

  7. Android通过xml生成创建View的过程解析

    Android的布局方式有两种,一种是通过xml布局,一种是通过java代码布局,两种布局方式各有各的好处,当然也可以相互混合使用.很多人都习惯用xml布局,那xml布局是如何转换成view的呢?本文 ...

  8. Android学习记录(1)—Android中XML文件的序列化生成与解析

    xml文件是非常常用的,在android中json和xml是非常常用的两种封装数据的形式,从服务器中获取数据也经常是这两种形式的,所以学会生成和解析xml和json是非常有用的,json相对来说是比较 ...

  9. Android 生成和Pull解析xml

    一.单个对象生成xml 生成以下xml,该怎么生成呢? <?xml version='1.0' encoding='UTF-8' standalone='yes' ?> <accou ...

随机推荐

  1. Java实习生常规技术面试题每日十题Java基础(七)

    目录 1. Java设计模式有哪些? 2.GC是什么?为什么要有GC? 3. Java中是如何支持正则表达式. 4.比较一下Java和JavaSciprt. 5.Math.round(11.5) 等于 ...

  2. MySQL8.0.20安装详解

    https://blog.csdn.net/yeb112233/article/details/106042867/ alter user root@localhost identified by ' ...

  3. C#中ref关键字的用法总结

    ref表示引用的意思,C#中它有多种用法,这里简单总结一下: 1.按引用传递参数 具体可见:C#中的值传递与引用传递(in.out.ref) 2.引用局部变量 引用局部变量指的是在变量声明时使用ref ...

  4. 分享一款开源堡垒机-jumpserver

    本文主文章地址为:https://blog.csdn.net/KH_FC JumpServer是由FIT2CLOUD(飞致远)公司旗下一款开源的堡垒机,这款也是全球首款开源的堡垒机,使用 GNU GP ...

  5. 初识python: 生成器

    生成器定义理解,直接上代码: #!/user/bin env python # author:Simple-Sir # time:20181005 # 生成器 ''' # 列表生成式 a=[i for ...

  6. [ vue ] 自定义组件的 v-model 理解

    需求场景描述: 1. 在父组件 myself.vue 里面定义数据 button_val 2. 在父组件 myself.vue.里面定义按钮,它的功能是吧 button_val  的值 -1 ---- ...

  7. java 线程 总结

    1.前言 (1)线程的上一级是进程,进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的. (2)线程与进程相似,但线程是一个比进程更小的执行单位,也被称为轻量级进程.一个进程在其执行 ...

  8. vue中form 表单常用校验封装(async-validator)

    新建一个js校验文件validate.js export const regular = { // 验证自然数 naturalNumber: /^(([0-9]*[1-9][0-9]*)|(0+))$ ...

  9. HDU 2099 整除的尾数(枚举 & 暴搜)

    原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2099 思路分析:这道题的解法可以说是相当暴力了,但也有一些小坑,以下几点萌新们值得留意一下: 1. 仔 ...

  10. spring-data-jpa ----OneToMany 一对多

    环境搭建 导入依赖  maven3.6.3 <properties> <spring.version>5.2.5.RELEASE</spring.version> ...