public class MainActivity extends Activity {

 private List<Person> persons;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//获取资源文件的输入流对象
//InputStream inputstram=this.getClass().getClassLoader().getResourceAsStream("person.xml");
try
{
persons=new ArrayList<Person>();
File file=new File(Environment.getExternalStorageDirectory().getAbsolutePath(),"a.xml");
Person p=new Person(25, "ggg", "21", "men", "1234562");
persons.add(p);
FileOutputStream stram=new FileOutputStream(file);
savexml(persons,stram);
System.out.println("保存成功");
}
catch (Exception e) {
e.printStackTrace();
}
} public void savexml(List<Person> person,OutputStream out)
{
/**
* 类似于这样格式的文件
* <?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<persons>
<person id="25">
<name>ggg</name>
<sex>men</sex>
<age>21</age>
<phone>1234562</phone>
</person>
</persons>
*/
try
{
//xml解析器
XmlSerializer xml=Xml.newSerializer();
//设置xml文件的输出方向
xml.setOutput(out, "UTF-8");
//设置xml的开始文档内容及编码格式
xml.startDocument("UTF-8", true);
//设置xml的开始节点
xml.startTag(null, "persons"); for(Person p:person)
{
xml.startTag(null, "person"); String id=String.valueOf(p.getId());
xml.attribute(null, "id",id);
//设置开始name节点
xml.startTag(null, "name");
//设置name的值
xml.text(p.getName());
xml.endTag(null, "name");
//设置name的结束节点
xml.startTag(null, "sex");
xml.text(p.getSex());
xml.endTag(null, "sex"); xml.startTag(null, "age");
xml.text(p.getAge());
xml.endTag(null, "age"); xml.startTag(null, "phone");
xml.text(p.getPhone());
xml.endTag(null, "phone");
//结束节点
xml.endTag(null, "person");
}
//xml的结束节点
xml.endTag(null, "persons");
//结束文档
xml.endDocument();
} catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
out.flush();
out.close();
}
catch (IOException e)
{
e.printStackTrace();
} }
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} }

person类

 public class Person
{
private int id;
private String name;
private String age;
private String sex;
private String phone;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Person(int id, String name, String age, String sex, String phone) {
super();
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
this.phone = phone;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public Person(){}
}

保存的内容结果是:

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<persons>
  <person id="25">
    <name>ggg</name>
    <sex>men</sex>
    <age>21</age>
    <phone>1234562</phone>
  </person>
</persons>

Android吧数据保存成xml文件的更多相关文章

  1. 微软BI 之SSIS 系列 - 两种将 SQL Server 数据库数据输出成 XML 文件的方法

    开篇介绍 在 SSIS 中并没有直接提供从数据源到 XML 的转换输出,Destination 的输出对象有 Excel File, Flat File, Database 等,但是并没有直接提供 X ...

  2. python文件目录遍历保存成xml文件代码

    Linux服务器有CentOS.Fedora等,都预先安装了Python,版本从2.4到2.5不等,而Windows类型的服务器也多数安装了Python,因此只要在本机写好一个脚本,上传到对应机器,在 ...

  3. 数据库数据导出成XML文件

    在数据库中,怎样把库中的数据导出XML文件, sql语句如下: SELECT *  FROM 表名 FOR XML AUTO, ELEMENTS

  4. SQLServer数据库表架构和数据保存成sql文件

    一.先在你的mssql数据库中点击“数据库–>任务–>生成脚本” 二.然后我们会看到有“生成和发布脚本”窗口 下一步 三.选择要编写脚本的数据库对象,全部导出选第一个,如果你想导出部分数据 ...

  5. 提取数据表保存为XML文件

    //连接数据库 SqlConnection con = new SqlConnection("server=****;database=****;uid=sa;pwd=********&qu ...

  6. List<T>保存为XML文件

    今天我们学习怎样把List<T>写成一个XML文件保存起来.因为我们在做动态网站开发时,需要对一些不太常变化的数据产生为XML文件,让程序直接去读取,而不是每次是SQL数据库取. 为了解决 ...

  7. 八、Android学习第七天——XML文件解析方法(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...

  8. tcpdump抓包并保存成cap文件

    首选介绍一下tcpdump的常用参数 tcpdump采用命令行方式,它的命令格式为: tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ] [ -i 网络接 ...

  9. 【Flex】读取本地JSON,然后JSON数据转成XML数据

    package utils { import flash.xml.XMLDocument; import flash.xml.XMLNode; import mx.rpc.xml.SimpleXMLE ...

随机推荐

  1. Uncaught SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported.

    canvas绘制图片,由于浏览器的安全考虑,如果在使用canvas绘图的过程中,使用到了外域的图片资源,那么在toDataURL()时会抛出安全异常: Uncaught SecurityError: ...

  2. retain two decimal digits.

    package kju.o; import static kju.print.Printer.*; import java.text.*; class MathDemo { public static ...

  3. mybatis for .net

    MyBatis For .NET学习笔记:开篇 http://chenkai.blog.51cto.com/2023960/763806 MyBatis For .NET学习笔记[2]:配置环境 ht ...

  4. Nginx配置同一个域名http与https两种方式都可访问

    ##配置 http://test.pay.joyhj.com https://test.pay.joyhj.com 两者都可访问 # vim /usr/local/nginx/conf/vhost/t ...

  5. iOS远程消息推送自我整理版

    @interface AppDelegate () <UIApplicationDelegate> @end @implementation AppDelegate - (BOOL)app ...

  6. PV、UV、IP的区别

    网站推广需要一个网站访问统计工具,常用的统计工具有百度统计.51la.量子恒道统计等.网站访问量常用的指标为PV.UV.IP.那么什么是PV.UV和IP,PV.UV.IP的区别是什么? --首先来看看 ...

  7. 关于JavaScript的类的继承

    其实最一开始学JS的时候就看过继承的实现.当时只是去试着理解从书上看来的代码段而已.今天又重新思考了一下,感觉这是一个思维探索演进的结果. 继承,即复用. 如果抛开继承的固有思想,让b复用a的成员,最 ...

  8. SGU 194. Reactor Cooling(无源汇有上下界的网络流)

    时间限制:0.5s 空间限制:6M 题意: 显然就是求一个无源汇有上下界的网络流的可行流的问题 Solution: 没什么好说的,直接判定可行流,输出就好了 code /* 无汇源有上下界的网络流 * ...

  9. Perl数组: shift, unshift, push, pop

    pop pop函数会删除并返回数组的最后一个元素. .. ; $fred = pop(@array); # $fred变成9,@array 现在是(5,6,7,8) $barney = pop @ar ...

  10. 使用BeanUtils组件

    使用BeanUtils组件 前提 1:导入commons-beanutils-1.8.3.jar        //根据  本人使用的是1.8.3的版本 2:导入日志包      //就是loggin ...