Android 安卓如何解决open失败:enoint(没有这样的文件或目录)错误?
我可以选择使用以下代码片段备份我的应用程序的Android 安卓如何解决open失败:enoint(没有这样的文件或目录)错误?,android,sqlite,Android,Sqlite,我可以选择使用以下代码片段备份我的应用程序的SQLite数据库 File sd = Environment.getExternalStorageDirectory(); File data = Environment.getDataDirectory(); File myDir = new File(Environment.getExternalStorageDirectory(), "LatLng
SQLite数据库
File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
File myDir = new File(Environment.getExternalStorageDirectory(), "LatLng Recorder");
if (!myDir.exists()) {
myDir.mkdir();
}
FileChannel source = null;
FileChannel destination = null;
String currentDbPath = "/data/" + "com.realtech.latlngrecorder" + "/databases/" + "latLngDB";
String backupPath = "/LatLng Recorder/latLngDB.db";
File currentDb = new File(data, currentDbPath);
File backupDb = new File(sd, backupPath);
try {
source = new FileInputStream(currentDb).getChannel();
destination = new FileOutputStream(backupDb).getChannel();
destination.transferFrom(source, 0, source.size());
source.close();
destination.close();
} catch (IOException e) {
e.printStackTrace();
}
它以前工作得很好,但每当我尝试备份数据库时,都会显示以下错误。
/data/data/com.realtech.latlngrecorder/databases/latLngDb:open失败:enoint(没有这样的文件或目录)
我不知道现在出了什么问题。上面的代码以前工作得很好。任何解决方案。谢谢。如果您正在使用emulator,请检查“db”的名称。是“latLngDB”还是“latLngDB.sqlite”或“latLngDB.db”,可能的原因是您正在查找的数据库文件不存在。我正在使用移动设备。您如何创建数据库?它是同名的吗?我不明白为什么会发生这种情况,但我会尝试的是,我会在emulator上安装应用程序,然后我会尝试使用命令提示符或文件浏览器打开这个数据库,如果我的文件存在或不存在。如果没有,它是解决了如果存在,那么我会寻找其他原因,给它一个尝试。我发现错误的数据库是没有创建时,我试图导出它。这就是问题所在。感谢您的时间伙伴。如果您正在使用emulator,请检查“db”的名称。是“latLngDB”还是“latLngDB.sqlite”或“latLngDB.db”,可能的原因是您正在查找的数据库文件不存在。我正在使用移动设备。您如何创建数据库?它是同名的吗?我不明白为什么会发生这种情况,但我会尝试的是,我会在emulator上安装应用程序,然后我会尝试使用命令提示符或文件浏览器打开这个数据库,如果我的文件存在或不存在。如果没有,它是解决了如果存在,那么我会寻找其他原因,给它一个尝试。我发现错误的数据库是没有创建时,我试图导出它。这就是问题所在。谢谢你的时间,朋友。