Java 文件转Zip实现
来源:互联网 发布:古代衣服淘宝 编辑:程序博客网 时间:2024/05/22 12:33
记录下文件转zip的实现:
/** * 文件转zip * @param sourceFilePath * @param zipFilePath * @param fileName * @return */public static boolean fileToZip(String sourceFilePath, String zipFilePath, String fileName) {boolean flag = false;File sourceFile = new File(sourceFilePath);BufferedInputStream bis = null;FileOutputStream fos = null;ZipOutputStream zos = null;if (sourceFile.exists() == false) {System.out.println("待压缩的文件不存在.");} else {try {File zipFile = new File(zipFilePath + "\\" + fileName +".zip"); File[] sourceFiles = sourceFile.listFiles();if (null == sourceFiles || sourceFiles.length < 1) {System.out.println("待压缩的文件目录里面不存在文件,无需压缩.");} else {fos = new FileOutputStream(zipFile);zos = new ZipOutputStream(new BufferedOutputStream(fos));for (int i = 0; i < sourceFiles.length; i++) {writeZip(sourceFiles[i], zipFilePath, zos, zipFilePath);}flag = true;}} catch (FileNotFoundException e) {e.printStackTrace();throw new RuntimeException(e);} finally {// 关闭流try {if (null != bis)bis.close();if (null != zos)zos.close();} catch (IOException e) {e.printStackTrace();throw new RuntimeException(e);}}}return flag;}/** * zip写入逻辑 * @param file * @param parentPath * @param zos * @param firstParentName */private static void writeZip(File file, String parentPath, ZipOutputStream zos, String firstParentName) { if(file.exists()){ if(file.isDirectory()){//处理文件夹 parentPath+=file.getName()+File.separator; File [] files=file.listFiles(); for(File f:files){ writeZip(f, parentPath, zos, firstParentName); } }else{ FileInputStream fis=null; try { fis=new FileInputStream(file); ZipEntry ze = new ZipEntry(parentPath.replace(firstParentName, "") + file.getName()); zos.putNextEntry(ze); byte [] content=new byte[1024]; int len; while((len=fis.read(content))!=-1){ zos.write(content,0,len); zos.flush(); } } catch (FileNotFoundException e) { System.out.println("创建ZIP文件失败"); } catch (IOException e) { System.out.println("创建ZIP文件失败"); }finally{ try { if(fis!=null){ fis.close(); } }catch(IOException e){ System.out.println("创建ZIP文件失败"); } } } } }
调用 fileToZip 这个方法即可。
1 0
- Java 文件转Zip实现
- Java实现解压ZIP文件
- java实现文件zip压缩
- java实现压缩zip文件
- java实现解压zip文件
- Java做成Zip文件,Java实现压缩文件
- java实现zip文件压缩,解压
- JAVA实现压缩/解压缩zip文件
- java实现将多个文件打包成zip
- java实现多文件打包成zip
- JAVA实现压缩,解压缩zip文件
- java 实现解压缩文件(ZIP/rar)
- 使用java实现zip文件的解压
- java实现解压缩zip文件_01
- Java实现将zip文件解压
- java实现单个文件多个文件的zip压缩
- Java实现将多个文件压缩成zip文件
- java实现对rar文件和zip文件的解压缩
- solr searching 过程解析
- win10配置adb环境变量
- ssh 免密码登陆
- java事件监听学习——通过键盘方向键控制小球移动
- find 用法以及经典案例
- Java 文件转Zip实现
- 让你一张图看懂布局 游戏公司的泛娱乐战略布局
- lucene 之 全文检索概述
- attr()和prop()的区别
- Linux下设置本地yum安装源
- R第一问 CentOS6.5 修改 /etc/sudoers 提示只读
- lucene 4.6 之索引文件格式
- java 快排
- 实习总结——解决问题与总结知识