android项目中,数据库复制问题
============问题描述============
用java io流复制后的sqlite3数据库文件,中文数据查询不出来,诸位是否遇到过这种问题,帮我解答一下
============解决方案1============
private void dbImport() { try { File dir = new File(DATABASE_PATH); // 如果/sdcard/testdb目录中存在,创建这个目录 if (!dir.exists()) dir.mkdir(); // 如果在/sdcard/testdb目录中不存在 // test.db文件,则从asset\db目录中复制这个文件到 // SD卡的目录(/sdcard/testdb) if (!(new File(databaseFilename2)).exists()) { // File f = (new File(databaseFilename2)); // f.delete(); // 获得封装testDatabase.db文件的InputStream对象 AssetManager asset = getAssets(); InputStream is = asset.open("db/database.db"); FileOutputStream fos = new FileOutputStream(databaseFilename2); byte[] buffer = new byte[1024]; int count = 0; // 开始复制testDatabase.db文件 while ((count = is.read(buffer)) > 0) { fos.write(buffer, 0, count); } fos.close(); is.close(); // asset.close(); } } catch (Exception e) { e.printStackTrace(); } // deleteDatabase("testDatabase.db");//删除数据库 }
这是我原来写的导入db方法。也没用到encoding。日文数据库,没问题。
============解决方案2============
参考:
http://download.csdn.net/detail/fire_fire_fire/5290315
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。