大牛?无他,唯手熟尔!

archive is not a ZIP archive之解决

2017-12-22 11:09:01来源:caogenjava阅读[134]评论[0]
摘要:最近用程序解压zip文件,遇到以下报错。java.util.zip.ZipException: archive is not a ZIP archive。报错很明确,你的文件不是zip文件。可问题就在这里,我的文件明明就是zip文件啊,用压缩工具也能打开,也能解压。上网查了好一会,没有任何结果,而且搜到的资料基本都是国外网站。

本文由草根java提供,转载请注明出处https://www.caogenjava.com/detail/91.html

最近用程序解压zip文件,遇到以下报错。

javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) throws java.io.IOException
    java.util.zip.ZipException: archive is not a ZIP archive
        at org.apache.tools.zip.ZipFile.positionAtCentralDirectory(ZipFile.java:472)
        at org.apache.tools.zip.ZipFile.populateFromCentralDirectory(ZipFile.java:313)
        at org.apache.tools.zip.ZipFile.<init>(ZipFile.java:185)
        at org.apache.tools.zip.ZipFile.<init>(ZipFile.java:162)
        at org.apache.tools.zip.ZipFile.<init>(ZipFile.java:123)

关键错误是这一句:

java.util.zip.ZipException: archive is not a ZIP archive

报错很明确,你的文件不是zip文件。可问题就在这里,我的文件明明就是zip文件啊,用压缩工具也能打开,也能解压。上网查了好一会,没有任何结果,而且搜到的资料基本都是国外网站。尝试解决期间发现一个问题,就是把这个文件解压后再次压缩成zip文件,然后再上传就没问题,真是遇见鬼了。然后开始比较两个文件有啥不一样,还真发现了幺蛾子。

比较.png

上面是比较截图,发现没有!!!那个有问题的所谓zip其实是一个rar文件,是rar!!!这个文件是客户给的,我在第一时间就想到了发生了什么事情:客户上传文件的时候系统提示只能上传zip文件,然后心想这好办啊,手动把rar后缀改为zip后缀,ok能上传了,但是系统报错,然后找到你,说系统有bug。

遇到同样问题的朋友不妨看看是不是也是这个情况,当然这个错误可能还有其他原因。


除非注明,文章均为草根java原创,转载请注明本文地址: https://www.caogenjava.com/detail/91.html

上一篇:Thunderbird+shadowsocks实现gmail收发        下一篇:12306终于用上了国际权威ssl证书
网友评论,共0 发表评论
昵称:
评论:
验证码: 刷新验证码