import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.*;public class UnZip {
public final static String ZIP_FILE = "D:/zip/test.zip";
public final static String UN_ZIP_FILE = "D:/zip/test/";
public void unZip() {
try {
ZipInputStream zipInput = new ZipInputStream(new BufferedInputStream(new FileInputStream(ZIP_FILE)));
try {
ZipEntry entry ;
byte[] byteArray = new byte[1024];
int len;
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(UN_ZIP_FILE));
while((entry = zipInput.getNextEntry()) != null){//此行报错,如下
while((len = zipInput.read(byteArray)) != -1) {
bos.write(byteArray, 0, len);
}
}
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
new UnZip().unZip();
}}
打印的异常信息如下:
Exception in thread "main" java.lang.IllegalArgumentException
at java.util.zip.ZipInputStream.getUTF8String(Unknown Source)
at java.util.zip.ZipInputStream.readLOC(Unknown Source)
at java.util.zip.ZipInputStream.getNextEntry(Unknown Source)
at cn.com.zip.UnZip.unZip(UnZip.java:22)
at cn.com.zip.UnZip.main(UnZip.java:36)

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【liuxinghua60】截止到2008-08-02 11:47:57的历史汇总数据(不包括此帖):
    发帖的总数量:10                       发帖的总分数:440                      每贴平均分数:44                       
    回帖的总数量:5                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:2                        结贴的总分数:70                       
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:8                        未结的总分数:370                      
    结贴的百分比:20.00 %               结分的百分比:15.91 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主该结一些帖子了

    取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=liuxinghua60
      

  2.   

    Exception in thread "main" java.lang.IllegalArgumentException 竟然是zip内部报错,我只能怀疑你的.zip文件自身有问题了。换一个看看。
      

  3.   

    随便找一个.jar的,都可以用zip解压缩