解压压缩文件给" java.util.zip.ZipException:无法读取版本"或QUOT; java.util.ZipException无法读取本地头版本45 QUOT; [英] Unzipping zip file gives "java.util.zip.ZipException: Cannot read version" or "java.util.ZipException Cannot read local header version 45"

查看:1229
本文介绍了解压压缩文件给" java.util.zip.ZipException:无法读取版本"或QUOT; java.util.ZipException无法读取本地头版本45 QUOT;的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想只是提取正常的zip文件,但它一直失败。 这是我用我现在的code:

I would like just to extract a normal zip file, but it keeps failing. This is my code I'm using now:

private File downloadPath = new File(Environment.getExternalStorageDirectory() + "/Test/file.zip");
private File unzipLoc = new File(Environment.getExternalStorageDirectory() + "/Test/");
        FileInputStream fin = new FileInputStream(downloadPath); 
        ZipInputStream zin = new ZipInputStream(fin);
        ZipEntry ze = null; 
        while ((ze = zin.getNextEntry()) != null) 
        { 
            FileOutputStream fout = new FileOutputStream(unzipLoc + ze.getName()); 
            for (int c = zin.read(); c != -1; c = zin.read()) 
            { 
                fout.write(c); 
            } 

            zin.closeEntry(); 
            fout.close(); 
        } 
        zin.close(); 

它未能对zin.getNextEntry()的一部分。 错误:java.util.zip.ZipException:无法读取版本 有任何想法吗? THX!

It fails on the 'zin.getNextEntry()' part. Error: java.util.zip.ZipException: Cannot read version Any ideas? Thx!

推荐答案

看起来你的zip文件是不是你的解压库更新。

Looks like your zip file is newer than your 'unzipping library'.

如果你读源:

<一个href="https://javapi.svn.$c$cplex.com/svn/trunk/JavApi_old/java.util.zip.ZipInputStream.cs">ZipInputStream (搜索新抛出:Zip​​Exception(不能读版本)的)

这表明你在检查zip文件的版本。然后看着维基百科的就说明这是需要解压zip的最低版本。

It shows you it checks the zip files version. Then looking at Wikipedia it shows this is the minimum version needed to extract the zip.

检查您的zip文件并重新保存您的压缩软件的低版本/再压缩它没有COM pression测试

或者更新您的邮编库(如您使用内部的android压缩库,你不能这样做)。

Alternately update your Zip library (which you can't do as your using the internal android zip library).

这篇关于解压压缩文件给&QUOT; java.util.zip.ZipException:无法读取版本&QUOT;或QUOT; java.util.ZipException无法读取本地头版本45 QUOT;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆