我在我的SD卡的根目录上获得了一个名为test4的文件,但是当我使用sqlite浏览器将其移动到我的计算机时它无效。有什么想法吗?
File data = Environment.getDataDirectory();
File sd = Environment.getExternalStorageDirectory();
if (sd.canWrite()) {
String currentDBPath = "/data/com.test.this/databases/this_db";
String backupDBPath = "/test4";
File currentDB = new File(data, currentDBPath);
File backupDB = new File(sd, backupDBPath);
if (currentDB.exists()) {
FileChannel src;
try {
src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB)
.getChannel();
try {
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
Windows称该文件为“20.0 KB”。来自我的模拟器的数据库文件中包含大量条目,但文件只有“9.00 KB”。我创建了多个文件“test1”,“test2”,“test3”,“test4”,但它们都出现了相同的确切大小。我的数据库不是“可复制的”吗?我不知道如何找出答案。 Astro文件管理器有文件详细信息。当我看到有关此文件的详细信息时。它给了我大小,权限是“-rw”,不知道是否有帮助。