分享

Android 把文件复制到指定目录

 dwlinux_gs 2014-07-29

       有时开发需要将指定的文件复制到指定的目录下,比如:第一次打开应用程序时,可以将其注册的一些相关信息或者一些有必要的数据信息复制到指定的目录下,永久的保存下来,今天我就仿照网上一篇相关博文写一个刚开始放在Androd工程里的一个数据库文件复制到Android的指定的数据库文件夹下面。

  

  1. private String databasepath = "data/data/com.android.egozixun/databases/";  
  2.     private String databasefn = "labelname.db";  
  3.       
  4.     // 把数据库复制到指定目录  
  5.     private void copyDatabase()  
  6.     {  
  7.         try  
  8.         {  
  9.             // 获得li.db 绝对路径  
  10.             String DATABASEFN = databasepath + databasefn;  
  11.             File dir = new File(databasepath);  
  12.               
  13.             // 如果/sdcard/li目录中存在,创建这个目录  
  14.             if(!dir.exists())  
  15.             {  
  16.                 System.out.print("1");  
  17.             }  
  18.             dir.mkdir();  
  19.               
  20.             // 如果在目录中不存在  
  21.             // 文件,则从res\raw目录中复制这个文件到  
  22.             if(!(new File(DATABASEFN).exists()))  
  23.             {  
  24.                 // 获得封装  文件的InputStream对象  
  25.                 InputStream is = getResources().openRawResource(R.raw.labelname);  
  26.                 System.out.println("2");  
  27.                 FileOutputStream fos = new FileOutputStream(DATABASEFN);  
  28.                 System.out.println("2.1");  
  29.                 // 下面这一段代码不是很理解,有待研究  
  30.                   
  31.                 byte[] buffer = new byte[8192];  
  32.                 System.out.println("3");  
  33.                 int count = 0;  
  34.                 // 开始复制db文件  
  35.                 while((count=is.read(buffer)) > 0)  
  36.                 {  
  37.                     fos.write(buffer, 0, count);  
  38.                     System.out.println("4");  
  39.                 }  
  40.                 fos.close();  
  41.                 is.close();  
  42.             }  
  43.         } catch(Exception e)  
  44.         {  
  45.             e.printStackTrace();  
  46.         }  
  47.     }  

     其中databasepath 是用来存放指定目录的,如果要改变目录,在此修改就行了。

     本文到此就结束了,各位兄台有不好之处,请不吝赐教!
 

更多 1
主题推荐
android 应用程序 数据库 exception 对象
猜你在找
Android 创建与解析XML(二)—— Dom方式
Android学习笔记(8) - GridView与ImageView
Android多点触摸放大缩小图片
eclipse设置显示行号
怎么样清除android手机长按home键后,出现的最近运行的6个任务中的指定一个的图标
[Android] AutoCompleteTextView:自动完成输入内容的控件
自己对杨一夫创业心得的感悟。
IOS开发:多媒体-音频的操作(一) 短声音的播放
Android 系统属性 Property
基于ZXing项目开发的条码扫描横屏
查看评论
4楼 gjw1949 2014-01-20 11:26发表 [回复]
那个 R.raw.labelname。。。这个中的raw是???
Re: hugengzong 2014-03-06 17:52发表 [回复]
回复gjw1949:就是你想复制到手机指定目录的文件
3楼 idlesunshine 2014-01-09 15:44发表 [回复]
楼主 25行 我这边报错了 求解
Re: hugengzong 2014-03-06 17:55发表 [回复]
回复idlesunshine:就是你想复制到手机指定目录的文件,你可以在res下创建一个文件夹,用来保存媒体文件
2楼 Hello-App 2013-12-14 09:44发表 [回复]
当是记录过去的学习之路
1楼 zhouss135ss_june 2011-10-31 16:55发表 [回复]
顶楼主,帮大忙了
Re: hugengzong 2011-11-01 11:13发表 [回复]
回复zhouss135ss_june:嘻嘻。。。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多