关于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文件的生成的更多相关文章

  1. Android 解析XML文件和生成XML文件

    解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...

  2. Matlab中使用脚本和xml文件自动生成bus模块

    帮一个老师写的小工具 在一个大工程中需要很多bus来组织信号,而为了规范接口,需要定义很多BusObject,用Matlab语言手写这些BusObject比较费工夫 所以用xml配置文件来写,也便于更 ...

  3. xml文件的生成与解析

    生成方法一:同事StringBuffer类对xml文件格式解析写入 package com.steel_rocky.xml; import android.app.Activity; import a ...

  4. 根据xml文件自动生成xsd文件

    根据xml生成xsd文档 1. 找到vs自带的xsd.exe工具所在的文件夹位置: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin 注意 ...

  5. XML文件的生成与读取

    从数据库生成: public static void ToXML(string tablename) { //获取数据 string sql = "select * from " ...

  6. 生成XML文件

    import java.io.FileOutputStream;import java.io.IOException; import org.jdom.Document;import org.jdom ...

  7. 使用Pull解析器生成XML文件和读取xml文件

    有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使 ...

  8. dom4j生成和解析xml文件

    dom4j生成和解析xml文件 要生成和解析如下格式的xml文件: <?xml version="1.0" encoding="UTF-8"?> & ...

  9. Java解析XML与生成XML文件

    XML是eXtensible Markup Language(可扩展标记语言)的简写形式,它是一种元标记语言(meta-markup language),也就是说它没有一套能够适用于各个领域中所有用户 ...

随机推荐

  1. SpringBoot的启动报错

    1.

  2. CentOS-7系统安装配置

    CentOS 7 系统安装配置 服务器相关设置如下: 操作系统:CentOS 7.3.1611 IP地址:192.168.3.30 网关:192.168.3.1 DNS:8.8.8.8 8.8.4.4 ...

  3. 关于android界面菜单,project显示问题

    刚用android studio不久,遇到了一个问题:界面菜单project不小心被关掉了,百度各种搜索无结果.我想大多数人都遇到过类似问题,此类问题其实很简单但是对于初学者来说就有点苦恼了.所以在此 ...

  4. opencv approxPolyDP使用

    代码: import cv2 import numpy as np # img = cv2.imread('/home/sensetime/edgeBoxes-Cpp-version/output/i ...

  5. 剑指offer:按之字形顺序打印二叉树(Python)

    题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 解题思路 先给定一个二叉树的样式: 前段时间 ...

  6. 支持向量机: Maximum Margin Classifier

    支持向量机即 Support Vector Machine,简称 SVM .我最开始听说这头机器的名号的时候,一种神秘感就油然而生,似乎把 Support 这么一个具体的动作和 Vector 这么一个 ...

  7. Bootstrap 轮播(Carousel)插件

    轮播插件是一种灵活的响应式的向站点添加滑块的方式.除此之外,内容也是非常灵活的.可是图像,内嵌框架,视频或者其它您想的放置任何内容的类型. 下面是一个简单的幻灯片,使用轮播(carousel)插件显示 ...

  8. 零基础快速入门SpringBoot2.0教程 (四)

    一.JMS介绍和使用场景及基础编程模型 简介:讲解什么是小写队列,JMS的基础知识和使用场景 1.什么是JMS: Java消息服务(Java Message Service),Java平台中关于面向消 ...

  9. [未完] term.js 记录遇到的问题

    参考博文:https://www.cnblogs.com/zhenfei-jiang/p/7065038.html 按照网上查找的资料敲了代码 term.on('data', function(dat ...

  10. select函数实例代码

    select函数简解: selct 称之为多路复用IO,使用它可以让程序阻塞在select上,而非实际IO函数上. int select(int nfds, fd_set *readfds, fd_s ...