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),也就是说它没有一套能够适用于各个领域中所有用户 ...
随机推荐
- keil 系列问题
1.为了让keil支持stm32f0系列,安装了keil4更高级的版本,但是发现编译时弹出异常提示框,经过一番折腾后找到解决办法,首先把电脑登陆账户名改为非中文的,然后卸载了keil重装就可以了. ...
- 【Shell脚本学习23】Shell函数参数
在Shell中,调用函数时可以向其传递参数.在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数... 带参数的函数示例: #!/bin/bash funWit ...
- 报错:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
参考原文:http://bbs.csdn.net/topics/390121452 项目>属性>配置属性>清单工具>输入和输出>嵌入清单:原来是“是”,改成“否” 如果上 ...
- OpenSSL s_server / s_client 应用实例
netkiller openssl tls 目录[-] 12.6. s_server / s_client 12.6.1. SSL POP3 / SMTP / IMAP 12.6.2. server ...
- LeetCode Reverse Words in a String 将串中的字翻转
class Solution { public: void reverseWords(string &s) { string end="",tem="" ...
- C基础的练习集及测试答案(提高题)
提高题:1.编写程序,随机生成一个1~10内的数,让对方猜3次.如果3次内能猜中则输出“恭喜你”:若3次内猜不中则输出正确答案.C语言中提供生成随机数的函数rand()用法:①所需头文件:#inclu ...
- happy2018暑期集训课后习题001
根据需求补全下面的代码: 需求: 每行输入三个整数a.b.c,根据a的值不同对b和c进行不同的操作: a为0时,计算b+c a为1时,计算b-c a为2时,计算b*c a为3时,计算b/c 并输出操作 ...
- Android(java)学习笔记104:Framework运行环境之启动SystemServer进程
1. SystemServer进程 SystemServer进程是zygote孵化出的第一个进程,该进程是从ZygoteInit.java的main函数中调用startSystemServe ...
- python 数据库操作 SQLite、MySQL 摘录
转自: http://www.cnblogs.com/windlaughing/p/3157531.html 不管使用什么后台数据库,代码所遵循的过程都是一样的:连接 -> 创建游标 -> ...
- GCH文件
GCH文件是将H文件当作CPP进行编译之后出现的结果, 在头文件进行编译后就会在文件夹中看到一个 “文件名.h.gch” 的文件. 那么在再次对gch文件进行编译的时候就会将gch当作cpp一样对待. ...