有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

gzip Java压缩大型文件

我正在开发一个应用程序,它可以处理一些非常大的文件,每个文件大约180mb,其中有3个文件。我想在我的应用程序中添加一个选项,通过压缩zip或tar之类的文件来备份这些文件。最好的选择是在Java中尽可能地压缩它们?焦油拉链Gzip


共 (3) 个答案

  1. # 1 楼答案

    好的,这是我使用的方法。我在网上找到了它,并对其进行了修改,使其成为垃圾路径,然后稍微提高了缓冲区,将大约450mbs的数据降低到100mbs,所以还不错:)谢谢您的帮助

    public void zipper(String[] filenames, String zipfile){
            byte[] buf = new byte[2048];
            try {
                String outFilename = zipfile;
                ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
                for (int i=0; i<filenames.length; i++) {
                    FileInputStream in = new FileInputStream(filenames[i]);
                    File file = new File(filenames[i]);
                    out.putNextEntry(new ZipEntry(file.getName()));
                    int len;
                    while ((len = in.read(buf)) > 0) {
                        out.write(buf, 0, len);
                    }
                    out.closeEntry();
                    in.close();
                }
                out.close();
            } catch (IOException e) {
            }
    
        }
    

    加1给你们俩:)

  2. # 3 楼答案

    您可以使用Apache Compress以编程方式执行此操作