在java中复制多个文件

时间:2013-01-03 10:32:25

标签: java

我试过

 private boolean CopyFiles(List<File> selected)
{
    try {
        File mNewFile = new File("/home/ubuntu/Desktop");
        mNewFile.createNewFile();
        FileUtils.copyFile(selected,mNewFile);
        return true;
    } catch (IOException ex) {
        Logger.getLogger(CommonMethod.class.getName()).log(Level.SEVERE, null, ex);

    }   



    return false;
}

在上面的代码中复制文件FileUtild.copyFile(File src,File dest)方法不支持多文件复制的任何想法吗?

2 个答案:

答案 0 :(得分:3)

我假设您使用的是org.apache.commons.io.FileUtils,并且“/ home / ubuntu / Desktop”是一个目录。 在这种情况下,您可以这样做:

nNewFile.mkdirs();
for(File f : selected) {
    FileUtils.copyFileToDirectory(f, nNewFile);
}

答案 1 :(得分:0)

您可以使用org.apache.commons.io.FileUtils将文件从一个位置复制到另一个位置

private void copyFiles(List<File> selected, File destinationDirectory)
{
    for(File file : selected){
       try {
          if (!destinationDirectory.exists())
            destinationDirectory.mkdir();
          FileUtils.copyFileToDirectory(file,destinationDirectory);

        } catch (IOException ex) {
          Logger.getLogger(CommonMethod.class.getName()).log(Level.SEVERE, null, ex);

        }   
    }
}