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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。