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. Theoretically Principled Trade-off between Robustness and Accuracy

    目录 概 主要内容 符号说明 Error Classification-calibrated surrogate loss 引理2.1 定理3.1 定理3.2 由此导出的TRADES算法 实验概述 代 ...

  2. [C++]C++ STL库函数大全

    #include <assert.h> //设定插入点 #include <ctype.h> //字符处理 #include <errno.h> //定义错误码 # ...

  3. 【jvm】08-垃圾回收器那么多傻傻分不清?

    [jvm]08-垃圾回收器那么多傻傻分不清? 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有帮助到你的话请顺手点 ...

  4. UML的定义和组成详细介绍

    目录 1.UML 1.1概述 1.2 UML是一种建模语言 1.3 UML语言包含三方面 2.UML支持软件体系结构建模 2.1 逻辑视图 2.2 实现(开发)视图 2.3 部署视图 2.4 过程视图 ...

  5. 包含全国所有省份、城市、县的一份json文件

    最近做项目时,有个需要全国所有省市信息的数据,于是百度了一下,发现CSDN的很多都需要积分下载,无解!所以自己收集了一份整理了出来. 简单说明一下 1.这是一份json文件,这是因为全国的省市信息一般 ...

  6. spring boot + thymeleaf +security自定义规则 的简单使用

    1.前言 以前开发一直使用 springMVC模式开发 ,前端页面常使用 JSP  ,现在html5淘汰了 ,要么使用html ,要么使用vue , 现在使用spring boot ,有必要总结一下 ...

  7. Thrift框架-具体使用

    1.前言 使用thrift心得: (1)thrift是一个RPC的框架  ,RPC是远程过程调用协议:用于进行可扩展且跨语言的服务的开发,以构建在C++.Java.Python.PHP.Ruby.Er ...

  8. 利用EndpointSlices扩展Kubernetes网络,提供更强的可伸缩性和功能

    EndpointSlices是一个令人兴奋的新API,它提供了Endpoints API的可扩展和可扩张的替代方案.EndpointSlice跟踪Pod服务后面的IP地址,端口,准备情况和拓扑信息.在 ...

  9. 关于网页中鼠标动作 onfocus onblur focus()

    其中: onFocus事件就是当光标落在文本框中时发生的事件. onBlur事件是光标失去焦点时发生的事件. 例如: <textarea onfocus="if(hello') {va ...

  10. golang中浮点型底层存储原理和decimal使用方法

    var price float32 = 39.29 float64和float32类似,只是用于表示各部分的位数不同而已,其中:sign=1位,exponent=11位,fraction=52位,也就 ...