これは本当におかしなことかもしれませんが、ファイルディレクトリにアクセスして、その中のすべての画像をロードできるようにしようとしています。何らかの理由で「/Images」などのファイルディレクトリを入力すると、新しいファイルを作成すると「\ Images」と表示され、バックスラッシュであるためWindowsがディレクトリを見つけることができません...
コード:
private final String imgDir = "/Images";
File dir = new File(imgDir);
System.out.println(imgDir);
System.out.println(dir);
File[] files = dir.listFiles(new FilenameFilter() {
public boolean accept(File dir, String fname) {
return fname.endsWith(".png") || fname.endsWith(".bmp") || fname.endsWith(".jpg");
}
});
印刷出力は、それぞれ「/Images」と「\Images」です。dirが間違っているため、ファイルは常にnullになります。なぜこれができるのか、何か考えはありますか?
編集:わかりました、動作しました。相対パスを使用する必要があるのは大丈夫でしたが、それはsrcフォルダーにあるので、「。\ src \ Images」にする必要がありました:Dこれを行うのは悪い習慣ですか?Imagesフォルダをルートプロジェクトディレクトリに移動する必要がありますか?