次のコードを使用して、apache commons io(2.4)のFileUtilsメソッド「staticvoid copyDirectory(File srcDir、File destDir)」を使用して、あるフォルダーから別のフォルダーにファイルをコピーしようとしています。
String srcDir = "/sourceDirectory/examples/";
String destDir = "/tmp/examples/";
try{
FileUtils.copyDirectory(new File(srcDir), new File(destDir));
} catch (IOException e){
e.printStackTrace();
}
ファイル構造は次のようになります。
examples/ (read access)
examples/.subdirectory (NO access)
examples/file1.txt (read access)
examples/file2.txt (read access)
examples/subdirectory2/file1.txt (read access)
examples/subdirectory2/file2.txt (NO access)
問題は、srcDirに、アクセスできないファイルとサブディレクトリがいくつかあることです。FileUtils.copyDirectoryは、「java.io.FileNotFoundException:.subdirectory(許可が拒否されました)」をスローして中止します。
許可されていないファイルを無視して、読み取ることができる他のすべてのファイルをコピーすることは可能ですか?