读取目录中的文件和(如果有)复制到文件夹

时间:2012-12-18 09:16:30

标签: java file directory copy

  

可能重复:
  Copying files from one directory to another in Java

我有一个文件夹(c:/ InstallationFiles),里面有.jar文件。我想通读它,如果名称等于test1我想将它复制到test1文件夹,然后如果名称是test2将其复制到test2文件夹等,这是我到目前为止:

private static int copyJARFiles(){

    resultCode = 0;

    File installFolder = new File(Constants.WINDOWS + Constants.INSTALLATION_FOLDER);
    File[] installFiles = installFolder.listFiles();

    for (int i = 0; i < installFiles.length; i++) {
        if (installFiles[i].equals("test1.jar")){

        }
        if (installFiles[i].equals("test2.jar")){

        }
    }
    return resultCode;
}

不知道如何复制它。我还是个菜鸟。

谢谢/亲切的问候

2 个答案:

答案 0 :(得分:0)

如果你想复制jar: 您可以使用 apache IO api 。使用以下代码: FileUtils.copy(的资源文件,destinationFile);

您也可以使用java 7.它包含复制文件的直接功能。

如果你想要提取罐: 你可以使用java.util.zip。*;包类。

如果您需要更多解释,请与我们联系。

答案 1 :(得分:0)

不确定我是否完全理解你的任务,但也许这个例子可以帮助你

for (File f : installFolder.listFiles()) {
    if (f.getName().endsWith(".jar")) {
        File targetDir = new File(installFolder, f.getName().replace(".jar", ""));
        if (!targetDir.exists()) {
            targetDir.mkdir();
        }
        File target = new File(targetDir, f.getName());
        Files.copy(f.toPath(), target.toPath());
    }
}

主要思想是Java 7为我们提供了Files.copy util

相关问题