xml文件的生成

xml文件生成的方式:

生成xml的样式

1、手动生成:

生成的xml文件可以保存在不同的地方,此处以sd卡为例

//拿到sd卡的状态

String state = Environment.getExternalStorageState();

//判断当前状态是否可用

if(state.equals(Environment.MEDIA_MOUNTED)){

//拿到sd卡的路径

String path = Environment.getExternalStorageDirectory()+"/sms.xml";

File file = new File(path);

try {

FileOutputStream fos = new FileOutputStream(file);

StringBuilder sb = new StringBuilder();

//添加头

sb.append("<?xml version = ‘1.0‘ encoding = ‘utf-8‘?>");

sb.append("<Smses>");

//循环拿到list中的值,此处没有列出

for(int i=0;i<list.size() ;i++){

sb.append("<sms>");

sb.append("<address>" + list.get(i).getAddress() + "</address>");

sb.append("<body>" + list.get(i).getBody() + "</body>");

sb.append("<date>" + list.get(i).getDate() + "</date>");

sb.append("</sms>");

}

sb.append("</Smses>");

fos.write(sb.toString().getBytes());

fos.close();

Toast.makeText(this, "xml文件创建成功", 0).show();

} catch (Exception e) {

e.printStackTrace();

Toast.makeText(this, "xml文件创建失败", 0).show();

}

}else{

Toast.makeText(this, "sd卡不可用", 0).show();

}

 2、利用系统的api生成:

    //拿到sd卡的状态

String state = Environment.getExternalStorageState();

//判断sd卡是否可用

if(state.equals(Environment.MEDIA_MOUNTED)){

//文件存在时直接写入,不存在时会重新创建文件

String path = Environment.getExternalStorageDirectory() +"/sms.xml";

File file = new File(path);

try {

//创建xml文件生成器

XmlSerializer serializer = Xml.newSerializer();

FileOutputStream fos = new FileOutputStream(file);

serializer.setOutput(fos, "utf-8");

//生成xml文件的头部分

serializer.startDocument("utf-8", true);

//生成开始节点

serializer.startTag(null, "Smses");

//此处是拿取list中的值,没有列出list

for(int i = 0;i<list.size();i++){

serializer.startTag(null, "sms");

serializer.startTag(null, "address");

serializer.text(list.get(i).getAddress());

serializer.endTag(null, "address");

serializer.startTag(null, "body");

serializer.text(list.get(i).getBody());

serializer.endTag(null, "body");

serializer.startTag(null, "date");

serializer.text(list.get(i).getDate());

serializer.endTag(null, "date");

serializer.endTag(null, "sms");

}

//结束节点(开始节点和结束节点一一对应)

serializer.endTag(null, "Smses");

//此处会完全关闭,所以不用再关闭流

serializer.endDocument();

Toast.makeText(this, "xml文件生成成功", 0).show();

} catch (Exception e) {

e.printStackTrace();

Toast.makeText(this, "xml文件生成失败", 0).show();

}

}else{

Toast.makeText(this, "sd卡不可用", 0).show();

}

}


时间: 2024-10-20 08:56:04

xml文件的生成的相关文章

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

帮一个老师写的小工具 在一个大工程中需要很多bus来组织信号,而为了规范接口,需要定义很多BusObject,用Matlab语言手写这些BusObject比较费工夫 所以用xml配置文件来写,也便于更改总线数据接口,然后使用matlab脚本来生成BusObject和Bus模块库 以下代码运行环境:WIN10+Matlab2015a 下面给出代码Matlab函数的代码: function xmlbuscreator(xmlfile) % XMLBUSCREATOR:从xml文件读取数据结构,并生成

Android Pull解析器解析XML文件和生成XML

PULL解析器方法如下: [注释] 读取到xml的声明返回 START_DOCUMENT: 结束返回 END_DOCUMENT : 开始标签返回 START_TAG: 结束标签返回 END_TAG: 文本返回 TEXT. 生成XML代码如下:

生成XML文件

import java.io.FileOutputStream;import java.io.IOException; import org.jdom.Document;import org.jdom.Element;import org.jdom.JDOMException;import org.jdom.output.Format;import org.jdom.output.XMLOutputter; public class CreateXML { Book[] books = new

使用Pull解析器生成XML文件

有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,这里推荐大家使用Pull解析器. 1.使用Pull解析器生成一个与itcast.xml文件内容相同的myitcast.xml文件,代码在下方 public static String writeXML(List<Person> persons, Writer wri

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

有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,这里推荐大家使用Pull解析器. 一.布局界面 [html] view plaincopyprint? <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

用SAX和PULL进行XML文件的解析与生成

XML解析有传统的dom方法还有Jsoup,SAX,PULL等,这里讲的是比较省内存的SAX和PULL方法.Android中极力推荐用PULL的方式来解析,我个人觉得pull确实比较简单,但其内部的逻辑性不是很分明.所以今天做了个类来将其中的多个步骤进行了分割,以后直接拿来用即可. 1.SAX: 首先先讲解SAX中各个方法的作用: 我们以这个不规则的xml语句做例子: <abc:kale sex=m age=21>jack</abc:kale> startDocument:开始解析

Java解析XML与生成XML文件

XML是eXtensible Markup Language(可扩展标记语言)的简写形式,它是一种元标记语言(meta-markup language),也就是说它没有一套能够适用于各个领域中所有用户的固守的标签和元素,相反,它允许开发者根据自已的需要定义自已的元素,XML中的X(eXtensible)就是说明了这一点. 它的特点有: 1.XML使用Unicode字符集,可生成英文.中文.希腊文或梵文等多种语言. 2.可将多个来源(包括其他XML文档和二进制文件)汇合进一个XML文档. 3.可利

UWP 读取本地XML文件

读取本地XML文件时要将xxx.xml文件的“生成操作”改为“嵌入的资源”会比较好,在手机上运行的话需要改为“内容” <?xml version="1.0" encoding="utf-8"?> <DataSet xmlns="http://WebXml.com.cn/"> <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata

php添加数据到xml文件的例子

php添加数据到xml文件中 时间:2015-12-17 06:30:37来源:网络 导读:php添加数据到xml文件中 xml文件:stu.xml: 复制代码代码如下: <?xml version="1.0" encoding="utf-8" ?><AllData><xueshengmen><xuesheng>  <name>张三</name>  <yuwen>80</yuw