java 解压6万个ZIP文件,如何提升速度?
目前我使用的是org.apache.tools.zipjar包解压5015个zip文件,解压后14344个文件,耗时:669493毫秒代码:***************...
目前我使用的是org.apache.tools.zip jar包 解压5015个zip文件,解压后14344个文件,耗时:669493毫秒
代码:
***********************************************************************************
ZipFile zfile=new ZipFile(ZIP_FILENAME);
Enumeration zList=zfile.getEntries();
ZipEntry ze=null;
byte[] buf=new byte[1024];
while(zList.hasMoreElements()){
ze=(ZipEntry)zList.nextElement();
if(ze.isDirectory()){
File f=new File(ZIP_DIR+File.separator+ze.getName());
f.mkdir();
continue;
}
FileOutputStream outfile=new FileOutputStream(getRealFileName(ZIP_DIR, ze.getName()));
OutputStream os=new BufferedOutputStream(outfile);
InputStream is=zfile.getInputStream(ze);
int readLen=0;
//int readCount = is.read(buf);
while ((readLen=is.read(buf, 0, 1024))!=-1) {
os.write(buf, 0, readLen);
}
is.close();
os.close();
}
zfile.close(); 展开
代码:
***********************************************************************************
ZipFile zfile=new ZipFile(ZIP_FILENAME);
Enumeration zList=zfile.getEntries();
ZipEntry ze=null;
byte[] buf=new byte[1024];
while(zList.hasMoreElements()){
ze=(ZipEntry)zList.nextElement();
if(ze.isDirectory()){
File f=new File(ZIP_DIR+File.separator+ze.getName());
f.mkdir();
continue;
}
FileOutputStream outfile=new FileOutputStream(getRealFileName(ZIP_DIR, ze.getName()));
OutputStream os=new BufferedOutputStream(outfile);
InputStream is=zfile.getInputStream(ze);
int readLen=0;
//int readCount = is.read(buf);
while ((readLen=is.read(buf, 0, 1024))!=-1) {
os.write(buf, 0, readLen);
}
is.close();
os.close();
}
zfile.close(); 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询