Android实现文件或文件夹压缩成.zip格式压缩包
本文实例为大家分享了Android压缩文件和文件夹的方法,供大家参考,具体内容如下
/** *压缩文件和文件夹 * *@paramsrcFileString要压缩的文件或文件夹 *@paramzipFileString压缩完成的Zip路径 *@throwsException */ publicstaticvoidZipFolder(StringsrcFileString,StringzipFileString)throwsException{ //创建ZIP ZipOutputStreamoutZip=newZipOutputStream(newFileOutputStream(zipFileString)); //创建文件 Filefile=newFile(srcFileString); //压缩 LogUtils.LOGE("---->"+file.getParent()+"==="+file.getAbsolutePath()); ZipFiles(file.getParent()+File.separator,file.getName(),outZip); //完成和关闭 outZip.finish(); outZip.close(); } /** *压缩文件 * *@paramfolderString *@paramfileString *@paramzipOutputSteam *@throwsException */ privatestaticvoidZipFiles(StringfolderString,StringfileString,ZipOutputStreamzipOutputSteam)throwsException{ LogUtils.LOGE("folderString:"+folderString+"\n"+ "fileString:"+fileString+"\n=========================="); if(zipOutputSteam==null) return; Filefile=newFile(folderString+fileString); if(file.isFile()){ ZipEntryzipEntry=newZipEntry(fileString); FileInputStreaminputStream=newFileInputStream(file); zipOutputSteam.putNextEntry(zipEntry); intlen; byte[]buffer=newbyte[4096]; while((len=inputStream.read(buffer))!=-1){ zipOutputSteam.write(buffer,0,len); } zipOutputSteam.closeEntry(); }else{ //文件夹 StringfileList[]=file.list(); //没有子文件和压缩 if(fileList.length<=0){ ZipEntryzipEntry=newZipEntry(fileString+File.separator); zipOutputSteam.putNextEntry(zipEntry); zipOutputSteam.closeEntry(); } //子文件和递归 for(inti=0;i以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。