Android:生成XML文件

Student{clazz='j2307',name='张三丰',sex='男',age='25'},Student{clazz='j2307'',name='周芷若',sex='女',age='23'}

List<Student> students =new ArrayList<>();

// 创建xml文件

public void createXML(View view){

//判断要生成的数据是否存在

if(students != null && students.size() >0){

try {

String nameSpace = "";

//获取一个输出流对象,文件保存在files下

File file = new File(getExternalFilesDir(null).getAbsolutePath(),"student.xml");

FileOutputStream fileOutputStream = new FileOutputStream(file);

//定义一个生成xml文件的对象

XmlSerializer xmlSerializer = Xml.newSerializer();

//xml文件输出地址

xmlSerializer.setOutput(fileOutputStream,"UTF-8");

//设置开始文档抬头

xmlSerializer.startDocument("UTF-8",true);

//文档的开始标签

xmlSerializer.startTag(nameSpace,"students");

//遍历数据生成每一项

for(Student student : students){

xmlSerializer.startTag(nameSpace,"student");

xmlSerializer.attribute(nameSpace,"class",student.clazz);

xmlSerializer.startTag(nameSpace,"name");

xmlSerializer.text(student.name);

xmlSerializer.endTag(nameSpace,"name");

xmlSerializer.startTag(nameSpace,"sex");

xmlSerializer.text(student.sex);

xmlSerializer.endTag(nameSpace,"sex");

xmlSerializer.startTag(nameSpace,"age");

xmlSerializer.text(student.age);

xmlSerializer.endTag(nameSpace,"age");

xmlSerializer.endTag(nameSpace,"student");

}

//结束文档标签

xmlSerializer.endTag(nameSpace,"students");

xmlSerializer.endDocument();

fileOutputStream.close();

Toast.makeText(getApplication(),"生成xml文件成功!",Toast.LENGTH_SHORT).show();

} catch (Exception e) {

e.printStackTrace();

Toast.makeText(getApplication(),"生成xml文件失败!"+e.getMessage(),Toast.LENGTH_SHORT).show();

}

}

}

相关推荐
程序员-Benothing2 分钟前
Java集合:List实现类深度对比
java·开发语言·后端·面试·list
wyjcxyyy11 分钟前
若依框架漏洞总结
java·ctf
wWYy.25 分钟前
Mysql:覆盖索引
android·数据库·mysql
Kapaseker31 分钟前
如果我要从 List 中获取一段元素
android·kotlin
水无痕simon32 分钟前
1 银行业务之个人存款业务
java
long31634 分钟前
PostgreSQL 学习资料 · 入门 / 练习 / 精通 / 扩展
java·数据结构·数据库·spring boot·sql·postgresql·数据库开发
三少爷的鞋37 分钟前
一次朋友圈发布流程,理解 Kotlin 协程为什么重新定义异步代码组织方式
android
北冥you鱼42 分钟前
Go语言数组越界处理机制详解:从编译时检查到运行时panic
java·python·golang
zzzll111142 分钟前
RAG(检索增强生成)技术详解:从原理到实践
java·人工智能
Seven971 小时前
用300行代码带你手写简化版RPC框架
java