Java-将2种压缩方法组合为一种

时间:2018-09-07 06:54:32

标签: java

我已经根据该线程编写了代码(Bane的第三篇文章) Zipping a folder which contains subfolders

如果我们观察代码,实际上它被拆分为两个,因为它是在main方法上调用的。我对代码执行的操作是,将主方法代码转换为常规方法,该方法将接受zip文件的将来文件名作为参数:

public void (String myZipFileName) {
FileOutputStream fos = new FileOutputStream("C:\\Users\\vebrpav\\" + myZipFileName);
ZipOutputStream zos = new ZipOutputStream(fos);
addDirToZipArchive(zos, new File("C:\\Users\\vebrpav\\Downloads\\"), null);
zos.flush();
fos.flush();
zos.close();
fos.close();
}

后来我意识到,我希望将2个方法合并为一个,只接受myZipFileName作为参数的方法。

我试图修改代码,但是我对if语句(如果文件是目录)感到困惑。

    if (fileToZip.isDirectory()) {
    System.out.println("+" + zipEntryName);
    for (File file : fileToZip.listFiles()) {
        addDirToZipArchive(zos, file, zipEntryName);
    }

如果我的代码仅接受zip文件的名称作为参数,我应该如何合并这两种方法?这可能吗?

0 个答案:

没有答案