//inputFileName压缩的路径
//zipFileName压缩后的路径
public void zip(String inputFileName,String zipFileName)
{
try
{
File file=new File(inputFileName);
ZipOutputStream out=new ZipOutputStream(new FileOutputStream(zipFileName));
zip(file,out,"");
out.close();
}catch(Exception e)
{
e.printStackTrace();
}
}
public void zip(File file,ZipOutputStream out,String base)
{
try
{
if(file.isDirectory())
{
out.putNextEntry(new ZipEntry(base+"/"));
base=base.length()==0?"":base+"/";
File fi[]=file.listFiles();
for(int i=0;i<fi.length;i++)
{
(fi[i],out,base+fi[i].getName());
}
}else{
out.putNextEntry(new ZipEntry(base));
FileInputStream in=new FileInputStream(file);
int b;
while((b=in.read())!=-1)
{
out.write(b);
}
in.close();
}
}catch(Exception e)
{
e.printStackTrace();
}
}
|