xml文件的生成
关于android中自定义xml文件的生成,请看示例代码(主要来源于黑马教程): import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List; import org.xmlpull.v1.XmlSerializer; import android.app.Activity;
import android.os.Bundle;
import android.util.Xml;
import android.view.View; public class MainActivity extends Activity {
//代表所有的短信对象.
private List<SmsInfo> smsInfos; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); //模拟短信信息的初始化.
SmsInfo info1 = new SmsInfo("110", "有人掉水里了!", System.currentTimeMillis(), 1);
SmsInfo info2 = new SmsInfo("119", "有火情!", System.currentTimeMillis(), 1);
SmsInfo info3 = new SmsInfo("120", "路边有人产仔!!", System.currentTimeMillis(), 2); smsInfos = new ArrayList<SmsInfo>();
smsInfos.add(info1);
smsInfos.add(info2);
smsInfos.add(info3);
} //直接在xml文件中绑定了activity中button的点击事件
public void click(View view){ //这是java中的xml文件的生成方法,不过这种方法比较容易出错
// StringBuilder sb = new StringBuilder();
// sb.append("<?xml version='1.0' encoding='utf-8' standalone='yes' ?>");
// sb.append("<smss>");
// for(SmsInfo smsinfo: smsInfos){
// sb.append("<sms>");
// } try {
//得到一个xml文件的序列化器
XmlSerializer serializer = Xml.newSerializer();
//初始化一些参数
File file = new File(getFilesDir(),"sms.xml");
FileOutputStream os = new FileOutputStream(file);
serializer.setOutput(os, "utf-8"); serializer.startDocument("utf-8", true);
serializer.startTag(null, "smss"); for(SmsInfo smsInfo: smsInfos){
serializer.startTag(null, "sms"); serializer.startTag(null, "number");
serializer.text(smsInfo.getNumber());
serializer.endTag(null, "number"); serializer.startTag(null, "content");
serializer.text(smsInfo.getContent());
serializer.endTag(null, "content"); serializer.startTag(null, "time");
serializer.text(smsInfo.getTime()+"");
serializer.endTag(null, "time"); serializer.startTag(null, "type");
serializer.text(smsInfo.getType()+"");
serializer.endTag(null, "type"); serializer.endTag(null, "sms");
} serializer.endTag(null, "smss");
serializer.endDocument(); os.close(); } catch (Exception e) {
e.printStackTrace();
} } //定义一个短信的业务类
class SmsInfo { private String number;
private String content;
private long time;
/**
* 1代表发送
* 2代表接受
*/
private int type; public SmsInfo(String number, String content, long time, int type) {
this.number = number;
this.content = content;
this.time = time;
this.type = type;
} public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public long getTime() {
return time;
}
public void setTime(long time) {
this.time = time;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
} } } 总结android中生成自定义xml文件的方法: 1)首先必须先定义好xml文件的格式,包括各种标签及其结构、数量等;(草稿纸上完成) 2)通过 XmlSerializer serializer = Xml.newSerializer(); 得到一个xml文件的序列化器; 3)初始化一些参数:文件目录,文件名,编码方式等;(写操作主要与文件输出流相关) 4)主要通过以下方法生成xml文件:(所放参数的具体要求,读者可自行了解) serializer.startDocument();
serializer.startTag();
serializer.text();
serializer.endTag();
serializer.endDocument();
xml文件的生成的更多相关文章
- Android 解析XML文件和生成XML文件
解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...
- Matlab中使用脚本和xml文件自动生成bus模块
帮一个老师写的小工具 在一个大工程中需要很多bus来组织信号,而为了规范接口,需要定义很多BusObject,用Matlab语言手写这些BusObject比较费工夫 所以用xml配置文件来写,也便于更 ...
- xml文件的生成与解析
生成方法一:同事StringBuffer类对xml文件格式解析写入 package com.steel_rocky.xml; import android.app.Activity; import a ...
- 根据xml文件自动生成xsd文件
根据xml生成xsd文档 1. 找到vs自带的xsd.exe工具所在的文件夹位置: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin 注意 ...
- XML文件的生成与读取
从数据库生成: public static void ToXML(string tablename) { //获取数据 string sql = "select * from " ...
- 生成XML文件
import java.io.FileOutputStream;import java.io.IOException; import org.jdom.Document;import org.jdom ...
- 使用Pull解析器生成XML文件和读取xml文件
有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使 ...
- dom4j生成和解析xml文件
dom4j生成和解析xml文件 要生成和解析如下格式的xml文件: <?xml version="1.0" encoding="UTF-8"?> & ...
- Java解析XML与生成XML文件
XML是eXtensible Markup Language(可扩展标记语言)的简写形式,它是一种元标记语言(meta-markup language),也就是说它没有一套能够适用于各个领域中所有用户 ...
随机推荐
- Java有关List的stream基本操作
参考博客: https://www.jianshu.com/p/9fe8632d0bc2 Stream简介 Java 8引入了全新的Stream API.这里的Stream和I/O流不同,它更像具有I ...
- SQLserver2005描述对数据的调用
SQL Server2005 采用了下面的4部分结构 服务器名称.数据库名称.架构名称.数据对象名称
- Python之HTML的解析(网页抓取一)
http://blog.csdn.net/my2010sam/article/details/14526223 --------------------- 对html的解析是网页抓取的基础,分析抓取的 ...
- HDU1430 BFS + 打表 + 康托展开
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1430 , 一道比较好的题. 这道题要用到很多知识,康托展开.BFS.打表的预处理还要用到一一映射,做完 ...
- JS事件阻止冒泡的写法
$("body").on("click", "#id", function (ev) { ev = ev || event;要写的逻辑代码 ...
- Hive之数据模型
(本文是基于多篇文章根据个人理解进行的整合,参考的文章见末尾的整理) 数据模型 hive的数据模型包括:database.table.partition和bucket. 1.Database:相当于关 ...
- 外网访问FTP服务,解决只能以POST模式访问Filezilla的问题
在内网可以正常使用PASV,但是在外网不行,导致数据传输慢或者根本连接不了,在FlashFXP中通过日志,找到了解决方法解决方法1.在Filezilla——Edit——Settings——Passiv ...
- python读取文件指定行
import linecache file=open('3_2.txt','r') linecount=len(file.readlines()) linecache.getline('3_2.txt ...
- Java源码——HashMap的源码分析及原理学习记录
学习HashMap时,需要带着这几个问题去,会有很大的收获: 一.什么是哈希表 二.HashMap实现原理 三.为何HashMap的数组长度一定是2的次幂? 四.重写equals方法需同时重写hash ...
- 线段树和zkw线段树
作者作为一个蒟蒻,也是最近才自学了线段树,不对的地方欢迎大佬们评论,但是不要喷谢谢 好啦,我们就开始说说线段树吧 线段树是个支持区间操作和查询的东东,平时的话还是蛮实用的 下面以最基本的区间加以及查询 ...