簡體   English   中英

如何在Android上的/ data / data / providers / downloads / cache中刪除文件

[英]How to Delete files in /data/data/providers/downloads/cache on Android

我想創建和刪除位於/數據/數據/供應商/下載/緩存一些文件。 到目前為止,我可以下載目標文件並成功保存在/ data / data / providers / downloads / cache中,但是當我嘗試刪除/ data / data / providers / downloads / cache中的文件時,它最終將失敗。 我的方法如下

File directory = new File("/data/data/providers/downloads/cache");
File[] files = directory.listFiles();

我想列出的所有文件,這樣我就可以找到目標文件需要被刪除。 我發現listFiles()方法始終返回NULL,所以我的問題是,我可以對目錄/ data / data / providers / downloads / cache使用listFile()嗎?

任何理想都受到歡迎。

BR艾倫

我使用這種方法:當我想刪除包括目錄的所有文件時。

static public boolean deleteDirectory(File path) {
    if( path.exists() ) {
        File[] files = path.listFiles();
        if (files == null) {
            return true;
        }
        for(int i = 0; i < files.length; i++) {
            if(files[i].isDirectory()) {
                deleteDirectory(files[i]);
            }
            else {
                files[i].delete();
            }
            Log.d("Deleting Files", files[i].getPath());
        }
    }

    return( path.delete() );
}

但是android有自己可以使用的清除緩存方法,但是它需要您將內容實際保存到緩存中。 問題可能是您從未添加任何內容,而您僅具有清除自己的緩存的權限?

我該如何利用Android的“清除緩存”按鈕來討論問題:)

祝好運

編輯:另外,您確定文件路徑正確嗎? 您可以使用

        Environment.getDownloadCacheDirectory()

為了找到緩存的根目錄,我認為呢?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM