黑马程序员技术交流社区

标题: 求:向xml中添加数据时怎么能不覆盖已有数据? [打印本页]

作者: 李慧声    时间: 2013-6-18 17:57
标题: 求:向xml中添加数据时怎么能不覆盖已有数据?
本帖最后由 李慧声 于 2013-6-18 17:58 编辑
  1. //求大神:动态添加xml数据,怎么样才能不覆盖xml已有的数据呢
复制代码
下面是写数据的过程,
  1. public void saveInstall_Collection_Record_Info(List<Install_Collection_Info> mICInfos, Writer writer) throws Throwable{
  2.                 XmlSerializer serializer = Xml.newSerializer();
  3.                 serializer.setOutput(writer);
  4.                 serializer.startDocument("UTF-8", true);
  5.                
  6.                 serializer.startTag(null, "result");
  7.                 for(Install_Collection_Info mICInfo : mICInfos){
  8.                         serializer.startTag(null, "record");
  9.                         serializer.attribute(null, "appid", mICInfo.getAppid()+"");
  10.                        
  11.                         serializer.startTag(null, "appname");
  12.                         serializer.text(mICInfo.getAppname());
  13.                         serializer.endTag(null, "appname");
  14.                        
  15.                         serializer.startTag(null, "version");
  16.                         serializer.text(mICInfo.getVersion());
  17.                         serializer.endTag(null, "version");

  18.                         serializer.startTag(null, "pkgName");
  19.                         serializer.text(mICInfo.getPkgName());
  20.                         serializer.endTag(null, "pkgName");
  21.                        
  22.                         serializer.endTag(null, "record");
  23.                 }
  24.                 serializer.endTag(null, "result");               
  25.                 serializer.endDocument();
  26.                 writer.flush();
  27.                 writer.close();
  28.         }
复制代码
下面是调用上面的写数据。
  1. public void saveInstall_Collection_Status(int appid,String appname,String version,String pkgName) throws Throwable{

  2.                 List<Install_Collection_Info> mICInfos = new ArrayList<Install_Collection_Info>();
  3.                 mICInfos.add(new Install_Collection_Info(appid, appname, version,pkgName));
  4.                 File file = new File(MyApplication.getAppContext().getFilesDir(),"Install_Collection_Info.xml");
  5.                 FileOutputStream outStream = null;
  6.                 if(!(file.exists() && file.isFile()))//文件不存在,创建文件,否则,直接写文件
  7.                         outStream = MyApplication.getAppContext().openFileOutput("Install_Collection_Info.xml",Context.MODE_PRIVATE);
  8.                 OutputStreamWriter writer = new OutputStreamWriter(outStream, "UTF-8");
  9.                 BufferedWriter bWriter = new BufferedWriter(writer);               
  10.                 saveInstall_Collection_Record_Info(mICInfos, bWriter);                                
  11.         }
复制代码

作者: 李慧声    时间: 2013-6-18 20:29
同志们别光总结啊 也解决一下问题撒
作者: 神之梦    时间: 2013-6-20 23:46
等待楼下大神。。。
作者: Just_Only    时间: 2013-6-20 23:48
同等大神




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2