私は次のコードでクラスを実行します。Java - 奇妙なディレクトリの問題?
public static void main(String[] args)
{
createDuplicateStructure("in", "out");
}
public static void createDuplicateStructure(String path_start, String path_result)
{
File start = new File(path_start);
File result = new File(path_result);
duplicateDirectoryStructure(start, result);
}
public static void duplicateDirectoryStructure(File start_dir, File result_dir)
{
//FileFilter used by listFiles(filter) - to make sure they are dirs
FileFilter dirs_only = new FileFilter()
{
public boolean accept(File file){ return file.isDirectory();}
};
File[] dir_contents = start_dir.listFiles(dirs_only);
for(File dir : dir_contents)
{
File duplicate = new File(result_dir.getPath(), dir.getName());
if(dir.mkdir())
{
duplicateDirectoryStructure(dir, duplicate);
}
else
{
System.out.println("ERROR: Unable to create dir! (" + duplicate.getPath() + ")");
}
}
}
私は、コンソールでこれを取得する:
Error: Unable to create dir! (out/a)
Error: Unable to create dir! (out/a)
Error: Unable to create dir! (out/a)
「アウト」ディレクトリの.jarと同じディレクトリにあります。 "a"、 "b"、 "c"ディレクトリ(テスト用)を含むディレクトリ "in"があります。
これはなぜ機能しないのでしょうか?
ありがとうございます!
あなたがduplicate.getPath()の代わりに何を書いたら、結果は何ですか?duplicate.getAbsolutePath() –