如何在android中访问我的应用程序数据库文件?

时间:2012-12-03 13:54:11

标签: android sqlite

我创建了一个使用SQLite数据库并插入一些数据的应用程序,然后我需要这个完整的sqlite数据库文件,我尝试访问它但我没有找到数据库文件,如何访问此文件以使用我的PC?

1 个答案:

答案 0 :(得分:2)

如果您使用的是模拟器,那么您只需从以下路径中的文件管理器中取出数据库即可访问您的数据库:data/data/com.my.package/databases/mydb.sqlite

如果您在设备上运行应用程序,请使用以下代码从上面的filePath获取数据库(因为您无法访问Android设备的内部文件系统)

try {
            File sd = Environment.getExternalStorageDirectory();
            File data = Environment.getDataDirectory();

            if (sd.canWrite()) {
                String currentDBPath = "/data/com.yourApp.common/databases/yourApp.db";
                String backupDBPath = "/yourApp.db";
                File currentDB = new File(data, currentDBPath);
                File backupDB = new File(sd, backupDBPath);

                if (currentDB.exists()) {
                    FileChannel src = new FileInputStream(currentDB)
                            .getChannel();
                    FileChannel dst = new FileOutputStream(backupDB)
                            .getChannel();
                    dst.transferFrom(src, 0, src.size());
                    src.close();
                    dst.close();
                }
            }
        } catch (Exception e) {
        }

之后,一旦有了db文件,就可以从名为SQLte Manager的Mozilla add On(插件)中查看它。使用此:https://addons.mozilla.org/en-us/firefox/addon/sqlite-manager/下载它。