anrdoid内存卡的使用,增强了手机的内存,给人们带来了很多方便,作为一个android学习者,不能不学习android的内存卡写入方法
详细内容介绍在代码样例里
希望能帮助大家
要写入内存卡,android4.0以上必须获取权限,android4.0以下不用
具体大家可以感受一下
配置文件需要添加
//写入权限申请
/>
文件样例
0
男
代码样例
package com.example.xmlser; import java.io.File; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List; import org.xmlpull.v1.XmlSerializer; import android.os.Environment; import android.util.Log; import android.util.Xml; import com.example.xmlser.domain.Person; public class xmlSerier { //本列是想android内存卡写入xml文件,需要用到xml序列化类 //xmlXmlSerializer,这个类是单列设计,只能通过Xml得到 //创建数据源 public List getPersonList(){ List list=new ArrayList(); for(int i=0;i<30;i++){ Person per=new Person(); per.setName(""+i); per.setAge(i); if(i%2==0){ per.setSex("男"); }else{ per.setSex("女"); } list.add(per); } return list; }; //写入方法 public void peosonToXml(List personList){ //获得序列化对象 XmlSerializer xmlSerializer=Xml.newSerializer(); try { //指定序列化地址和编码 File path=new File(Environment.getExternalStorageDirectory(),"person.xml"); FileOutputStream out= new FileOutputStream(path.toString()); //设置字节输出流,指定字符集 xmlSerializer.setOutput(out, "utf-8"); //设置doucument,开始写入 xmlSerializer.startDocument("utf-8", true); //指定根节点 xmlSerializer.startTag(null, "persons"); //循环加入person节点 for(Person per:personList){ xmlSerializer.startTag(null, "person"); //设置名字 xmlSerializer.attribute(null, "id", per.getName()); //设置年龄 xmlSerializer.startTag(null, "age"); xmlSerializer.text(String.valueOf(per.getAge())); xmlSerializer.endTag(null,"age"); //设置sex xmlSerializer.startTag(null, "sex"); xmlSerializer.text(String.valueOf(per.getSex())); xmlSerializer.endTag(null,"sex"); xmlSerializer.endTag(null, "person"); } //结束根节点 xmlSerializer.endTag(null, "persons"); //结束写入 xmlSerializer.endDocument(); out.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }