ZipException
文件流出现下面异常,请问是那里出了问题,怎么修正代码啊?
异常内容:
java.util.zip.ZipException:no current ZIP entry
at java.util.zip.ZipPutputStream.write(ZipOutputStream.java:267)
at java.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202)
at java.nio.cs.StreamEncoder.impClose(StreamEncoder.java:297)
at java.nio.cs.StreamEncoder.close(StreamEncoder.java:130)
at java.io.OutputStreamWriter.close(OutputStreamWriter.java:217)
at java.io.BufferedWriter.close(BufferedWriter.java:249)
at test.batch.DataGet.doWrierZip(DataGet.java:409)
at test.batch.DataGet.excute(DataGet.java:204)
at test.batch.DataGet.main(DataGet.java:1110)
其中倒数第三行指向代码:
boolean isFinish = csvWriter.write(path,zipFileName,csvFileName,DataRS,endtime)
调用writer方法:
public final boolean write(final String path,final String zipFileName,final String csvFileName,final ResultSet DataRS,final String endtime) throws Exception {
ZipOutputStream zos=null;
BufferedWriter bw =null;
ZipEntry file=null;
int judgeNum=1000;
try {
String filePath = path+ zipFileName;
zos = new ZipPutputStream(New BufferedOutputStream(New FileOutputStream(filePath),Const.BUFFER_SIZE));
bw = new BufferedWriter(New OutputStreamWriter(zos,"SJIS"));
file = new ZipEntry(csvFileName);
zos.putNextEntry(file);
int timeJudgeCount=0;
long countData=0;
while(dataRS.next()){
timeJudgeCount++;
String data=getRowData(dataRS);
bw.write(data);
if(timeJudgeCount>judgeNum){
bw.flush();
Long nowtime=System.currentZTimeMillis();
if(nowtime>= endtime){
zos.colseEntry();
bw.close();
bw=null;
return false;
}
timeJudgeCount=0;
}
countData++;
}
bw.flush();
zos.closeEntry();
bw,close;
bw=null;
Long nowtime=System.currentZTimeMillis();
if(nowtime>= endtime){
return false;
}
return true;
} finally {
if(bw!=null){
zos.closeEntry();
bw.close();
}
}
}
异常内容:
java.util.zip.ZipException:no current ZIP entry
at java.util.zip.ZipPutputStream.write(ZipOutputStream.java:267)
at java.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202)
at java.nio.cs.StreamEncoder.impClose(StreamEncoder.java:297)
at java.nio.cs.StreamEncoder.close(StreamEncoder.java:130)
at java.io.OutputStreamWriter.close(OutputStreamWriter.java:217)
at java.io.BufferedWriter.close(BufferedWriter.java:249)
at test.batch.DataGet.doWrierZip(DataGet.java:409)
at test.batch.DataGet.excute(DataGet.java:204)
at test.batch.DataGet.main(DataGet.java:1110)
其中倒数第三行指向代码:
boolean isFinish = csvWriter.write(path,zipFileName,csvFileName,DataRS,endtime)
调用writer方法:
public final boolean write(final String path,final String zipFileName,final String csvFileName,final ResultSet DataRS,final String endtime) throws Exception {
ZipOutputStream zos=null;
BufferedWriter bw =null;
ZipEntry file=null;
int judgeNum=1000;
try {
String filePath = path+ zipFileName;
zos = new ZipPutputStream(New BufferedOutputStream(New FileOutputStream(filePath),Const.BUFFER_SIZE));
bw = new BufferedWriter(New OutputStreamWriter(zos,"SJIS"));
file = new ZipEntry(csvFileName);
zos.putNextEntry(file);
int timeJudgeCount=0;
long countData=0;
while(dataRS.next()){
timeJudgeCount++;
String data=getRowData(dataRS);
bw.write(data);
if(timeJudgeCount>judgeNum){
bw.flush();
Long nowtime=System.currentZTimeMillis();
if(nowtime>= endtime){
zos.colseEntry();
bw.close();
bw=null;
return false;
}
timeJudgeCount=0;
}
countData++;
}
bw.flush();
zos.closeEntry();
bw,close;
bw=null;
Long nowtime=System.currentZTimeMillis();
if(nowtime>= endtime){
return false;
}
return true;
} finally {
if(bw!=null){
zos.closeEntry();
bw.close();
}
}
}
...全文
相关推荐
java 出现Zipexception 异常的解决办法
主要介绍了java 出现Zipexception 异常的解决办法的相关资料,出现 java.util.zip.ZipException: error in opening zip file 异常的原因及解决方法,需要的朋友可以参考下
ZipException(解决方案).md
ZipException(解决方案).md
tomcat启动报错:java.util.zip.ZipException的解决方法
主要给大家介绍了关于tomcat启动报:java.util.zip.ZipException错误的解决方法,文中通过示例代码介绍的非常详细,同样遇到这个问题的朋友可以参考借鉴,下面随着小编来一起学习学习吧
sys_decode_2.zip_MFC zip unzip_WebCamLib_Sample.zip_decode_mfc z
在MFC中使用zip和unzip
android电子书
充分解释了android电子书源代码,对翻页效果有着详细的解析。


