2016-08-02 3 views
0

私は、うまく動作するファイルをダウンロードするためのコードをいくつか作成しました。これを動作させるアプリケーションディレクトリにダウンロードするように設定しました。アプリケーションフォルダ/ files/dltestに格納されていますAndroidアプリケーションファイルのパス

私の問題は、ファイルが存在するかどうかをチェックすることです。私は1つのstackoverflowメソッドを試しています。何らかの理由でハードコードされたパスしか動かすことができません。パスを取得する方法で構築された使用

/sdcard/Android/Data/com.test.alihassan.download/files/dltest/REQS.pdf 

は私に同じパスを与えるが付き/データ/データ/ COM ....これは

+0

「String path = c.getFilesDir()。toString()+」/ files/dltest/REQS.pdf「;」あなたは '.../files/..'の部分を見落としました。それは今働きますか? –

+0

いいえ、ログでは/data/data/com.test.alihassan.download/files/files/dltest/REQS.pdf –

+0

と表示されます。ダウンロード後に正確なファイルパスを記録できますか?ダウンロード直後のログのように –

答えて

1
File mydir = context.getFilesDir(); 
File fileWithinMyDir = new File(mydir, "myfile/path/fileNmae"); 
if(fileWithinMyDir.exists()){ 
    //exists 
    }else{ 
    //not exists 
} 

アップデートは機能しません:

 //File mydir = this.getFilesDir(); 
     File mydir = this.getExternalFilesDir("/dltest/REQS.pdf"); 
     if (mydir.exists()) { 
      //exists 
     } else { 
      //not exists 
     } 
+0

正しいパスのように見えますが動作しません –

+0

@AliHassanはコードをダウンロードして正しい経路を描くことができますか? –

+0

request.setDestinationInExternalFilesDir(getApplicationContext()、 "/ dltest"、 "REQS.pdf"); DownloadManager manager =(DownloadManager)getSystemService(Context.DOWNLOAD_SERVICE); manager.enqueue(request);} –

関連する問題