Android-Xml文件生成,Xml数据格式写入
在上一篇博客,Android-XML格式描述,介绍来XML在Android中的格式;
生成xml文件格式数据,Android提供了Xml.newSerializer();,可以理解为Xml序列化;
序列化:把内存里面的数据(file,databases,xml 等等) 丢给某一个地方;
反序列化:把某个地方的数据(file,databases,xml 等等),拿到内存中;
既然是Android操作Xml,就用Android所提供的API,不用Java所提供的API,DOM解析,SAX解析了;
@Override
public void onClick(View v) { // 模拟20条Person数据
List<Person> persons = new ArrayList<Person>();
for (int i=0; i<20; i++) {
persons.add(new Person(i, "zhangsan" + i, i+10));
}
Log.d(TAG, "persons.size():" + persons.size()); // persons.size():20 try {
// 如何创建xml文件,然后把这20条数据,写入xml文件里面去,一定是去看Android提供的API
XmlSerializer serializer = Xml.newSerializer();
// 指定流目录
OutputStream os = openFileOutput("persons.xml", Context.MODE_PRIVATE);
// 设置指定目录
serializer.setOutput(os, "UTF-8"); // 开始写入Xml格式数据
// 开始文档
// 参数一:指定编码格式 参数二:是不是独立的xml(这个xml与其他xml是否有关联)
serializer.startDocument("UTF-8", true); // 开始根标签
// 参数一:命名空间 参数二:标签名称
serializer.startTag(null, "persons"); for (Person person : persons) {
// 开始子标签
serializer.startTag(null, "person"); // 设置属性
serializer.attribute(null, "id", String.valueOf(person.getId())); // 设置name
// 开始name标签
serializer.startTag(null, "name");
// 写入值
serializer.text(person.getName());
// 结束name标签
serializer.endTag(null, "name"); // 设置age
// 开始age标签
serializer.startTag(null, "age");
// 写入age值
serializer.text(String.valueOf(person.getAge()));
// 结束age标签
serializer.endTag(null, "age"); // 结束子标签
serializer.endTag(null, "person");
} // 结束根标签
serializer.endTag(null, "persons"); // 结束文档
serializer.endDocument();
}catch (Exception e) {
e.printStackTrace();
}
}
执行后的结果:
打开看看:
Android-Xml文件生成,Xml数据格式写入的更多相关文章
- Android 使用XmlSerializer生成xml文件
在Android开发中,我们时常要用到xml文件. xml作为一种数据载体,在数据传输中发挥着重要的作用,而且它可读性比较强. 下面给出在Android开发中使用XmlSerializer类生成一个简 ...
- LINQ to XML 从逗号分隔值 (CSV) 文件生成 XML 文件
参考:http://msdn.microsoft.com/zh-cn/library/bb387090.aspx 本示例演示如何使用 语言集成查询 (LINQ) 和 LINQ to XML 从逗号分隔 ...
- Android项目中的config.xml文件 “config.xml”
Android应用程序需要保存一些配置时,可以将这些配置项放置到values/config.xml文件中. 实例分析: <?xml version="1.0" encodin ...
- Python 解析 XML 文件生成 HTML
XML文件result.xml,内容如下: <ccm> <metric> <complexity>1</complexity> <unit> ...
- XML文件生成C++代码(基于rapidxml)
简述 与XML文件生成C++代码(基于pugixml)中的功能一致,只是这里改用的rapidxml来实现.就不多说了,直接放代码. 代码 #include "rapidxml-1.13/ra ...
- XML文件生成C++代码(基于pugixml)
简述 在一个项目中需要用到XML的解析和生成,知乎上有人推荐rapidxml和pugixml等库.RapidXML一看库还比较大,就先研究一下pugixml了. 因为对解析XML的需求不大(都是一些很 ...
- 根据xml文件生成javaBean
原 根据xml文件生成javaBean 2017年08月15日 18:32:26 吃完喝完嚼益达 阅读数 1727 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出 ...
- android-pull方式解析xml文件以及XML文件的序列化
android解析XML ---------------------------基础要像磐石 在android平台上可以使用SAX.DOM和自带的Pull解析器解析xml文件,本文主要介绍使用pull ...
- Android first---xml文件生成与解析
一.使用append进行xml生成 Message类属性:private String body; private String date; private String a ...
- 使用Java解析XML文件或XML字符串的例子
转: 使用Java解析XML文件或XML字符串的例子 2017年09月16日 11:36:18 inter_peng 阅读数:4561 标签: JavaXML-Parserdom4j 更多 个人分类: ...
随机推荐
- EasyUI 修改
<script type="text/javascript"> <!-- js --> /*=============================修改对 ...
- <cctype>库
http://www.cplusplus.com/reference/cctype/ 函数名称 返回值 isalnum() 如果参数是字母数字,即字母或数字,该函数返回true isalpha() 如 ...
- Distributing Ballot Boxes
Distributing Ballot Boxes http://acm.hdu.edu.cn/showproblem.php?pid=4190 Time Limit: 20000/10000 MS ...
- Island Transport
Island Transport http://acm.hdu.edu.cn/showproblem.php?pid=4280 Time Limit: 20000/10000 MS (Java/Oth ...
- Url,HTTPUrlConnection(一)
package com.cmy.urlcon; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...
- 使用HttpModule实现网址重写
1. 修改配置文件: <httpModules> <</span>add name="html" type="HttpModule&quo ...
- 分割回文串 · Palindrome Partitioning
[抄题]: 给定一个字符串s,将s分割成一些子串,使每个子串都是回文串. 返回s所有可能的回文串分割方案. 给出 s = "aab",返回 [ ["aa", & ...
- mvc 封装控件使用mvcpager
具体使用如下: 前台部分: @RenderPage("~/Views/Controls/_Pagebar.cshtml", new PageBar { pageIndex = Mo ...
- SNP/单核苷酸多态性分析
SNP/单核苷酸多态性分析 SNP(Single Nucleotide Polymorphism),即单核苷酸多态性,是由于单个核苷酸改变而导致的核酸序列多态.一般来说,一个SNP位点只有两种等位基因 ...
- 用java创建UDF,并用于Hive
典型代码如下: 导入UDF类: import org.apache.hadoop.hive.ql.exec.UDF; public class UpperCassUDF extends UDF{ pu ...