繁体   English   中英

删除android sqlite数据库文件

[英]Delete android sqlite database file

好吧,我正在手机上调试我的android应用程序。 Eclipse中有一个文件资源管理器,我可以在其中浏览和删除一些文件。 我的应用程序的数据库文件位于“ / data”下(默认情况下),但是使用Eclipse的File Explorer,我无权访问此文件夹。

所以我的问题是“为什么我没有访问权限”?

有没有办法访问该文件夹?

谢谢!

...

我删除数据库文件的方式是: context.deleteDatabase(DATABASE_NAME);

尝试这个:

private void writeToSD() throws IOException {
        File f=new File("/data/data/yourPackageName/databases/DatabaseName");
        FileInputStream fis=null;
        FileOutputStream fos=null;

        try{
            fis=new FileInputStream(f);


            fos=new FileOutputStream("/mnt/sdcard/dump.db");
            while(true){
                int i=fis.read();
                if(i!=-1){
                    fos.write(i);
                }
                else{
                    break;
                }
            }
            fos.flush();

        }
        catch(Exception e){
            e.printStackTrace();

        }
        finally{
            try{
                fos.close();
                fis.close();
            }
            catch(IOException ioe){
                System.out.println(ioe);
            }
        }
    } 

从try catch块中调用此文件时检查异常,这将使您入门。 干杯!!

您需要root访问权限。 通常,必须先植根设备,然后才能进行植根。

了解有关生根的更多信息: http : //www.androidcentral.com/root

所以我的问题是“为什么我没有访问权限”?

您可能没有对该文件夹的读写权限

有没有办法访问该文件夹?

是。 您需要具有root用户访问权限,并使用读写权限重新安装该文件夹。

因为您的电话没有root,所以Eclipse / DDMS没有查看该文件夹的权限。 从安全角度来看,这是完全正确的,否则您可以编辑/删除/破坏任何应用程序的数据,而不仅仅是您自己的数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM