gz 解压缩后比原文件大很多

gz 解压缩后比原文件大很多

刘备忘录 发布于 2021-11-29 字数 1978 浏览 782 回复 3

原文件 index.xml 只有300KB,使用java生成压缩文件index.xml.gz 文件大小为25KB. 但是再次解压出来的index.xml 竟然有8M.而且用notpad++ 打开已经全是乱码了.求解!附上生成gz文件的java代码:

    public static void compressFile(String inFileName) {
        String outFileName = inFileName + ".gz";
        FileInputStream in = null;
        try {
            in = new FileInputStream(inFileName);
        }catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        
        GZIPOutputStream out = null;
        try {
            out = new GZIPOutputStream(new FileOutputStream(outFileName));
            
        }catch (IOException e) {
            e.printStackTrace();
        }
        byte[] buf = new byte[1024];
        int len = 0;
        try {
            while ((len = in.read()) > 0) {
                out.write(buf, 0, len);
            }
            in.close();
            System.out.println("Completing the GZIP file..."+outFileName);
            out.flush();
            out.close();
        }catch (IOException e) {
            e.printStackTrace();
        }
    }

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

檐上三寸雪 2021-12-01 3 楼

代码有问题,把while ((len = in.read()) > 0) {改成

 while ((len = in.read(buf)) > 0) {,再试试。

后知后觉 2021-12-01 2 楼

不啊,都生成压缩包了.

累赘 2021-11-30 1 楼

死循环?