首页 > 解决方案 > Java - 将项目从 zip 文件移动到受密码保护的 zip 文件中

问题描述

有没有办法通过密码使用 ZipOutputStream(来自 java.util.zip)?

我正在将文件从(未加密的)zip 文件复制到另一个加密的 zip 文件中。使用 ZipInpuStream/ZipOutputStream 可以将原始 zip 文件读取到目标 zip 文件中,但我还没有看到有关如何在 ZipOutputStream 上使用密码的配方。

        ZipInputStream zis = new ZipInputStream(new FileInputStream(inputFile));
        ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(outputFile));
        byte[] buff = new byte[1024];
        while (true) {
          int bytesRead = zis.read(buff, 0, 1024);
          if (bytesRead < 0) {
            // finished
            break;
          }
          zos.write(buff, 0, bytesRead);
        }
        zos.flush();
        zos.close();
        zis.close();

标签: javastreampasswordszip

解决方案


恐怕Java.util.zip很难设置密码,尝试使用zip4j https://github.com/srikanth-lingala/zip4j


推荐阅读