如何使用GZIPINPUT / GZIPOUTPUT流将.gz文件下载到临时文件夹

时间:2013-11-28 12:02:31

标签: java gzipinputstream gzipoutputstream

我从X站点下载所有gz格式文件。将所有文件下载到临时文件夹后,当我确定0KB时..请帮我解决代码注释。代码中的任何更改

 URL site = new URL (sb.toString());
         URLConnection uc = site.openConnection();             
        uc.setRequestProperty("Accept-Encoding", "gzip");//Here the change
        java.io.BufferedInputStream in = new BufferedInputStream(uc.getInputStream());
        //ZipInputStream gzin = new ZipInputStream(in);

         GZIPInputStream gzin = new GZIPInputStream(in);

         fileName = fileName.substring(fileName.lastIndexOf("/")+1);
         File destFile = new File("D:\\source\\"+fileName);
         java.io.FileOutputStream fos = new FileOutputStream(destFile);
         GZIPOutputStream gz = new GZIPOutputStream(fos);
         byte data[] = new byte[65536];
         int gsize = 0;
         while((gsize = gzin.read(data)) != -1)
         {
               gz.write(data, 0, gsize);
         }

1 个答案:

答案 0 :(得分:0)

添加

gz.close();

最后。

此外,如果您要立即再次拉链,则无需解压缩。如果你真的想保存压缩版本,请从你的代码中删除GZipInputStream和GZipOutputStream,因为这正是你目前所做的。