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. 层叠样式优先级CSS

    按照W3School网站(点这里直达)的说法,当同一个 HTML 元素被不止一个样式定义时,它们是有优先级之分的,如下,将优先级从小到大排列出来,其中4的优先级最高: 1.浏览器缺省设置2.外部样式表 ...

  2. 全国OA系统下载地址(全)

    思道OAhttp://www.anyoffice.net微软.NET平台,支持64位 金和OAhttp://www.jinher.com 红帆OAhttp://www.ioffice.cn 致远OAh ...

  3. if 和 swith的选择.

    具体数值不多,而是符合byte short int char这四种类型,建议使用swtich语句.因为效率稍高. 其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广.

  4. c# 为什么要用 get set 属性

    1 可以对赋值 做验证 ,范伟限制,额外的限制 2 可以设置 只读 只写 3 可以做线程同步 4 可以将属性设置在interface接口中 5 可以使用虚属性 或 抽象属性 可以填补 没有 虚字段 抽 ...

  5. OC - 27.CATransition

    概述 简介 CATransition又称转场动画,是CAAnimation的子类,可以直接使用 转场动画主要用于为图层提供移入/移出屏幕的动画效果 转场动画常见的应用是UINavigationCont ...

  6. Tomcat设置最佳线程数总结

    最佳线程数: 性能压测的情况下,起初随着用户数的增加,QPS会上升,当到了一定的阀值之后,用户数量增加QPS并不会增加,或者增加不明显,同时请求的响应时间却大幅增加.这个阀值我们认为是最佳线程数. 为 ...

  7. js submit的問題

    form 里面有input name="submit"的时候 $('#seachform').submit();不起作用

  8. Mac开机黑屏解决办法

    开机黑屏问题 *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !import ...

  9. centos 安装vnc服务

    1.安装tigervnc-server yum install tigervnc-server 2.启动vnc服务 vncserver:1 [错误提示待解决bad display name " ...

  10. windows 下PHP 和 nginx配置

    http://www.cnblogs.com/huayangmeng/archive/2011/06/15/2081337.html