android创建xml文件的方法。

要操作android的外部存储,所以要在AndroidManifest.xml文件中添加权限。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

首先要创建一个XmlSerialize对象。

并创建一个文件,并打开获得输出流。

使用XmlSerilaize中的操作方法向输出流中写入数据。

package com.example.xmltest;

import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Xml;
import android.widget.Toast; import org.xmlpull.v1.XmlSerializer; import java.io.File;
import java.io.FileOutputStream; public class MainActivity extends AppCompatActivity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); Serializer();
} public void Serializer() { try {
// 获取外部存储路径,并创建文件
File file = new File(Environment.getExternalStorageDirectory(), "person.xml");
// 创建一个文件输出流
FileOutputStream os = new FileOutputStream(file);
XmlSerializer serializer = Xml.newSerializer();
// 设置输出的编码格式
serializer.setOutput(os, "UTF-8");
// 设置文档的编码格式,这个会在xml中显示出来
serializer.startDocument("UTF-8", true);
// 添加注释
serializer.comment("comment, xml file test");
// 开始标签
serializer.startTag(null, "tag_1");
// 标签对应的内容
serializer.text("hello");
// 结束
serializer.endTag(null, "tag_1"); serializer.startTag(null, "tag_2");
// 属性
serializer.attribute(null, "id", "2");
serializer.text("hello");
serializer.endTag(null, "tag_2"); serializer.startTag(null, "tag_3");
// 在标签中再设置一个标签
serializer.startTag(null, "tag_3_3");
serializer.attribute(null, "id", "3");
serializer.text("hello");
serializer.endTag(null, "tag_3_3");
serializer.endTag(null, "tag_3"); serializer.endDocument(); // 文档结束
serializer.flush(); os.close(); // 关闭输出流
Toast.makeText(this, "success", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(this, "fail", Toast.LENGTH_SHORT).show();
}
}
}

输出效果

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<!--comment, xml file test-->
<tag_1>hello</tag_1>
<tag_2
id="2">hello
</tag_2>
<tag_3>
<tag_3_3
id="3">hello
</tag_3_3>
</tag_3>

Tony Liu

2017-3-20, Shenzhen

android 创建 xml文件的更多相关文章

  1. Android -- 创建XML文件对象及其序列化, pull解析XML文件

    1. 创建XML文件对象及其序列化 示例代码:(模拟以xml格式备份短信到SD卡) SmsInfo.java, bean对象 /** * 短信的业务bean * @author Administrat ...

  2. 自动帮助创建android资源xml文件的网站

    自动帮助创建android资源xml文件的网站 http://android-holo-colors.com/ stack overflow上一个seekbar的例子: http://stackove ...

  3. android解析xml文件的方式

    android解析xml文件的方式   作者:东子哥 ,发布于2012-11-26,来源:博客园   在androd手机中处理xml数据时很常见的事情,通常在不同平台传输数据的时候,我们就可能使用xm ...

  4. .net中创建xml文件的两种方法

    .net中创建xml文件的两种方法 方法1:根据xml结构一步一步构建xml文档,保存文件(动态方式) 方法2:直接加载xml结构,保存文件(固定方式) 方法1:动态创建xml文档 根据传递的值,构建 ...

  5. C#操作XML学习之创建XML文件的同时新建根节点和子节点(多级子节点)

    最近工作中遇到一个问题,要求创建一个XML文件,在创建的时候要初始化该XML文档,同时该文档打开后是XML形式,但是后缀名不是.在网上找了好些资料没找到,只能自己试着弄了一下,没想到成功了,把它记下来 ...

  6. Java 创建xml文件和操作xml数据

    java中的代码 import java.io.File; import java.io.StringWriter; import javax.xml.parsers.DocumentBuilder; ...

  7. TinyXML2读取和创建XML文件 分类: C/C++ 2015-03-14 13:29 94人阅读 评论(0) 收藏

    TinyXML2是simple.small.efficient C++ XML文件解析库!方便易于使用,是对TinyXML的升级改写!源码见本人上传到CSDN的TinyXML2.rar资源:http: ...

  8. XML文件操作类--创建XML文件

    这个类是在微软XML操作类库上进行的封装,只是为了更加简单使用,包括XML类创建节点的示例. using System; using System.Collections; using System. ...

  9. asp.net创建XML文件方法

    方法一:按照XML的结构一步一步的构建XML文档.    通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的 方法一:按照XML的结 ...

随机推荐

  1. /proc/meminfo分析(一)

    本文主要分析/proc/meminfo文件的各种输出信息的具体含义. 一.MemTotal MemTotal对应当前系统中可以使用的物理内存. 这个域实际是对应内核中的totalram_pages这个 ...

  2. tree -L n

    # tree -L 显示到目录的第二层

  3. MySQL数据库如何去掉数据库中重复记录

    对于常规的MySQL数据表中可能存在重复的数据,有些情况是允许重复数据的存在,有些情况是不允许的,这个时候我们就需要查找并删除这些重复数据,以下是具体的处理方法! 方法一:防止表中出现重复数据 当表中 ...

  4. 深入了解MySQL的索引

    (一)关于存储引擎   创建合适的索引是SQL性能调优中最重要的技术之一.在学习创建索引之前,要先了解MySql的架构细节,包括在硬盘上面如何组织的,索引和内存用法和操作方式,以及存储引擎的差异如何影 ...

  5. C++ 11 创建和使用 shared_ptr

    shared_ptr 的类型是C + +标准库中一个聪明的指针,是为多个拥有者管理内存中对象的生命周期而设计的.在你初始化一个 shared_ptr 后,你可以复制它,把函数参数的值递给它,并把它分配 ...

  6. ARM获得PC指针为何PC=PC+8

    http://blog.csdn.net/sddzycnqjn/article/details/7691534 R15(PC)总是指向“正在取指”的指令,而不是指向“正在执行”的指令或正在“译码”的指 ...

  7. Python import random报错处理办法

    [转自]http://blog.chinaunix.net/uid-26000296-id-4356738.html python安装失败:make的时候报错: /usr/include/tkDecl ...

  8. 【转】雅典娜与宙斯的对话.(kerberos原理)

    1 八月 2010 22:07:51关于Kerberos的对话(MIT)雅典娜与宙斯 雅典娜与宙斯关于地狱之门守护者的对话 Kerberos: Network Authentication Proto ...

  9. js字母大小写字母转换

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  10. springmvc集成Freemarke配置的几点

    项目结构图 废话不多说, 集成步骤: 1.web.xml  spring-mvc配置 <?xml version="1.0" encoding="UTF-8&quo ...