6

アプリケーションの内部ストレージのサブディレクトリにzipが存在するかどうかを確認しようとしています。

File file = this.getApplicationContext().getFileStreamPath(this.getFilesDir().getAbsolutePath() + "/thesubdirectory/the.zip";
if(file.exists()) {
    Log.e(this.class.getName(), "file exists");
}

これはを投げていjava.lang.IllegalArgumentException: File /data/data/my.package.name/files/thesubdirectory/the.zip contains a path separatorます。

なぜこうなった?これがファイルが存在するかどうか確認する方法だと思いました。

4

1 に答える 1

8

file.exists です。しかし、getFileStreamPath はパスを取ることができません。そのディレクトリ内のファイル名を取る必要があります。これを試して:

File file = new File(this.getFilesDir().getAbsolutePath() + "/thesubdirectory/the.zip");
于 2013-01-20T06:02:22.637 に答える