android > 将assets 文件中的数据库导入 包里databases文件夹
public void checkData(){ //app 的 数据库路径 String dataPath = getApplicationContext().getDatabasePath("..").getAbsolutePath(); dataPath = dataPath.replace("..","");//out:/data/data/com.test1/databases/ // 数据库 文件 路径 String dataFilePath = dataPath+"/zi_ci.db"; // 数据库 文件 File dataFile=new File(dataFilePath); //判断数据库文件是否存在 if(dataFile.exists()){ Log.d("mft","数据库文件已经存在"); }else{ Log.d("mft", "不存在数据库将准备创建"); File path=new File(dataPath); if (path.mkdir()){ Log.i("mft", "创建数据库文件夹成功"); }else{ Log.i("mft", "创建数据库文件夹失败"); }; try { //得到 assets 资源 AssetManager assets_am= MainActivity.this.getAssets(); //得到 assets 数据库文件的输入流 InputStream is=assets_am.open("keyb_sqlite.db"); //在包里的数据库文件夹里创建 数据库 空文件 FileOutputStream fos=new FileOutputStream(dataFile); Log.i("mft", "fos="+fos); //创建byte数组 用于1KB写一次 写入 包里 刚才创建的 数据库 空文件 byte[] buffer=new byte[1024]; int count = 0; while((count = is.read(buffer))>0){ fos.write(buffer,0,count); } //最后关闭就可以了 fos.flush(); fos.close(); is.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } //\\ }
相关推荐
bleach00 2020-11-10
林德强之原创 2020-08-13
PlumRain 2020-08-03
bob于 2020-07-26
dataminer 2020-06-25
neverstopforcode 2020-06-18
zxznsjdsj 2020-06-16
langyue 2020-06-13
huangyx 2020-06-11
鲁氏汤包王 2020-06-11
LWLWLiang 2020-05-28
wkwanglei 2020-05-26
Coohx 2020-04-13
thunderstorm 2020-05-09
Andrea0 2020-05-04
数据库工具开发 2020-04-25
tlsmile 2020-04-24
helencoder 2020-04-10