2
new File(filePath, "/classes/").mkdirs();

filePathはディレクトリであり、存在します。classes作成する必要がある新しいディレクトリです

mkdirs はクラスをファイルと見なして何もしないと思いますが、実行すると

new File(filePath, "/tyhdtyurtu/classes/").mkdirs();

/tyhdtyurtu/classes/作成されました!このことを修正する方法は?必要なすべてのディレクトリを作成する方法は?

UPD: このフォルダー内には classes.jar ファイルもあり、/classes/ dir を作成しようとすると失敗します。しかし、たとえばclasses1を作成しようとすると、うまくいきます。なんで?

UPD2:

System.out.println(new File(apkName, "classes").exists());
System.out.println(new File(apkName, "classes").mkdirs());
System.out.println(new File(apkName, "classes").exists());
System.out.println(new File(apkName, "classes").isDirectory());
System.out.println(new File(apkName, "classes").getAbsolutePath());

出力:

false
true
true
true
C:\Users\Admin\Videos\App\classes

リンクを出力からエクスプローラーにコピーすると、エクスプローラーがこのパスを見つけられないというエラー メッセージが表示されます。そして、これ以外のフォルダーを作成できれば、権限がないとは思いません

4

3 に答える 3