android XmlSerializer 组拼xml
16lz
2021-01-23
组拼Xml 文件
public static void zupinXml(Context context) throws IllegalArgumentException, IllegalStateException, IOException{
//SD卡地址 ,注意加权限
String path = Environment.getExternalStorageDirectory().getPath();
//创建File文件,增加一个路径
File file = new File(path+"/com.gengshuaijia");
file.mkdir(); // 设置新路径
// 使用包装流,将字节流 转化为 字符流
FileOutputStream stream = new FileOutputStream(file+"/sms.xml");
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(stream)) ;
/**
* android 一般都使用xml 来存放数据
*/
//[1] 获取一个 XmlSerializer 对象 Serializer 序列化
XmlSerializer newSerializer = Xml.newSerializer();
//[2] 设置 序列化器的输出方式 ,字符流缓冲区必须进行刷新,否则可能写不进去数据
newSerializer.setOutput(writer);
//<?xml version="1.0" encoding="utf-8"?>
/**
* 【1】编写xml 文件的开头 编码方式 是否需要约束 true 代表不需要
*/
newSerializer.startDocument("utf-8", true);
/**
*【2】 编写xml 的命名空间
* xmlns:android="http://schemas.android.com/apk/res/android"
*/
//newSerializer.startTag("http://schemas.android.com/apk/res/android", "android"); //暂时这句话出现问题
/**
* 创建结点 存放内容
*/
newSerializer.startTag(null, "henan");
// 第一个子节点
newSerializer.startTag(null, "luoyang");
newSerializer.text("11");
newSerializer.endTag(null, "luoyang");
// 第二个子节点
newSerializer.startTag(null, "zhengzhou");
newSerializer.text("22");
newSerializer.endTag(null, "zhengzhou");
newSerializer.endTag(null, "henan");
//newSerializer.endTag(null, "android");
//必须调用该方法
// 当调用这个方法,写完的时候。所有未结束的开始标记将被关闭和输出将被刷新
newSerializer.endDocument();
writer.close(); // 关闭字符缓冲流 必须执行
}
public static void zupinXml(Context context) throws IllegalArgumentException, IllegalStateException, IOException{
//SD卡地址 ,注意加权限
String path = Environment.getExternalStorageDirectory().getPath();
//创建File文件,增加一个路径
File file = new File(path+"/com.gengshuaijia");
file.mkdir(); // 设置新路径
// 使用包装流,将字节流 转化为 字符流
FileOutputStream stream = new FileOutputStream(file+"/sms.xml");
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(stream)) ;
/**
* android 一般都使用xml 来存放数据
*/
//[1] 获取一个 XmlSerializer 对象 Serializer 序列化
XmlSerializer newSerializer = Xml.newSerializer();
//[2] 设置 序列化器的输出方式 ,字符流缓冲区必须进行刷新,否则可能写不进去数据
newSerializer.setOutput(writer);
//<?xml version="1.0" encoding="utf-8"?>
/**
* 【1】编写xml 文件的开头 编码方式 是否需要约束 true 代表不需要
*/
newSerializer.startDocument("utf-8", true);
/**
*【2】 编写xml 的命名空间
* xmlns:android="http://schemas.android.com/apk/res/android"
*/
//newSerializer.startTag("http://schemas.android.com/apk/res/android", "android"); //暂时这句话出现问题
/**
* 创建结点 存放内容
*/
newSerializer.startTag(null, "henan");
// 第一个子节点
newSerializer.startTag(null, "luoyang");
newSerializer.text("11");
newSerializer.endTag(null, "luoyang");
// 第二个子节点
newSerializer.startTag(null, "zhengzhou");
newSerializer.text("22");
newSerializer.endTag(null, "zhengzhou");
newSerializer.endTag(null, "henan");
//newSerializer.endTag(null, "android");
//必须调用该方法
// 当调用这个方法,写完的时候。所有未结束的开始标记将被关闭和输出将被刷新
newSerializer.endDocument();
writer.close(); // 关闭字符缓冲流 必须执行
}
更多相关文章
- 在Android中把内容写到XML文件中
- 【Android】volley网络框架的文件下载
- android 对文件的操作模式
- Android从网上下载文件
- Android遍历某个文件夹的图片并实现滑动查看的的Gallery
- Android SDcard目录文件操作
- android sdcard文件存储 + 媒体库更新方法
- 录音及播放音频文件