File sd = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
FileChannel source=null;
FileChannel destination=null;
String cartella = (getString(R.string.app_name));
String currentDBPath = "/data/"+getPackageName()+"/cartella/"+"Backup.db";
String backupDBPath = "/cartella/Backup.db";
File currentDB = new File(data, currentDBPath);
File backupDB = new File(sd, backupDBPath);
try {
source = new FileInputStream(currentDB).getChannel();
destination = new FileOutputStream(backupDB).getChannel();
destination.transferFrom(source, 0, source.size());
source.close();
destination.close();
Toast.makeText(this, "DB Exported!", Toast.LENGTH_LONG).show();
} catch(IOException e) {
e.printStackTrace();
Toast toast = Toast.makeText(getApplicationContext(),(R.string.Toast_export_errore), Toast.LENGTH_SHORT);
toast.show();
01-20 08:55:14.757: W/System.err(1383): java.io.FileNotFoundException: /data/data/info.androidhive.slidingmenu/cartella/Backup.db: open failed: ENOENT (No such file or directory)
01-20 08:55:14.787:W/System.err(1383):at libcore.io.iobridge.open(iobridge.java:409)01-20 08:55:14.787:W/System.err(1383):at java.io.fileInputStream.(fileInputstream.java:78)01-20 08:55:14.827:W/System.err(1383):at main.impostazioni.esporta(impostazioni.java:334)01-20 2008:55:14.827:W/System.err(1383):at java.lang.reflect.Method.invoke(Method.java:525)01-2008:55:14.827:W/System.err(1383):at Android.view.view.view$1.onclick(View.java:3628)01-2008:55:14.857:W/System.err(1383):at Android.view.view.performClick(View.java:4240)01-2008:55:14.857:W/System.err(1383):at 55:14.877:W/System.err(1383):at Android.os.handler.handleCallback(handler.java:730)01-20 08:55:14.877:W/System.err(1383):at Android.os.handler.dispatchMessage(handler.java:92)01-20 08:55:14.887:W/System.err(1383):at Android.os.looper.loop(looper.java:730)137)01-20 08:55:14.898:W/System.err(1383):at android.app.activitythread.main(activitythread.java:5103)01-20 08:55:14.927:W/System.err(1383):at java.lang.reflect.Method.invokenative(本机方法)01-20 08:55:14.927:W/System.err(1383):at java.lang.reflect.Method.invoke(525)01-20 08:55:14.957:W/System.err(1383):at scaller.run(zygoteinit.java:737)01-20 08:55:14.957:W/system.err(1383):at com.android.internal.os.zygoteinit.main(zygoteinit.java:553)01-20 08:55:14.987:W/system.err(1383):at dalvik.system.nativestart.main(本机方法)01-20 08:55:14.987:W/system.err(1383):by:libcore.io.errnoexception:open failed:ENOENT
尝试替换:
File currentDB = new File(data, currentDBPath);
与:
File currentDB = getDatabasePath("Backup.db");
硬编码数据库路径不是一个好主意,因为它不能保证在所有设备上都是相同的。使用getDatabasePath()将返回创建数据库的路径。因此,如果数据库确实存在,将返回正确的路径。
source = new FileInputStream(backupDB).getChannel();
destination = new FileOutputStream(currentDB).getChannel();
大多数新的android设备都有一个内部sdcard和一个外部sdcard。我想做一个文件资源管理器应用程序,但我不能找到如何获得路径使用在我的应用程序,因为 在大多数设备中只返回,但另一个外部sdcard有另一个路径,如。感谢任何帮助。
我开始在Delphi XE5中为android开发应用程序,遇到了一些问题。 我真的不懂怎么找路。在我设置了写入和读取外部存储的权限后,我尝试获取路径,以便查看我将创建的文件保存在何处,我得到的结果如下: 对于系统。尤蒂尔斯。第四- 据我从其他主题了解,GetDocumentsPath应该是默认的sdcard路径,下载应该是sdcard/Downloads,但它使用/Android/data/ap
本文向大家介绍Android获取SD卡路径及SDCard内存的方法,包括了Android获取SD卡路径及SDCard内存的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android获取SD卡路径及SDCard内存的方法。分享给大家供大家参考。具体分析如下: 昨天在研究拍照后突破的存储路径的问题,开始存储路径写死为: private String folder = "/sdcard/
我正在使用以下代码获取通过OTG连接的所有外部存储设备(SDCard或USB)的列表 它读取所有设备中的sdcard,但在某些设备中检测到USB 我该用什么?
我想打开文件管理器的一个按钮,点击,并想要获得一个特定项目的路径,选择该特定项目。
当我每次运行我的应用程序时,versionName在清单文件中会递增。20389是旧版本名,20390是增量数。 项目的成功构建就像成功构建一样。但问题是为什么Android studio会缓存以前的apk版本。以下是错误: 目标设备:lge-nexus_5-061642fd00511249上载文件本地路径:h:\customfolder\app\build\outputs\apk\myappna