读取目录下的文件将文件压缩
来源:互联网 发布:录音软件免费下载 编辑:程序博客网 时间:2024/06/05 16:55
/* * 将下载下来的文件打成压缩包 * documentPath 原文件目录 * resultPath 结果文件名 */ public String compression(String documentPath,String resultPath){ OutputStream outStream; ZipOutputStream zos = null; File file = new File(documentPath); try { outStream = new FileOutputStream(resultPath); zos = new ZipOutputStream(outStream);// 将输入流获取的信息存储到zip的输出流里面 //读取目录中的所有文件 String[] list = file.list(); String[] filenames = new String[list.length]; for (int i = 0; i < list.length; i++) { if ("".equals(list[i])) continue; filenames[i] = resultPath + list[i]; } // 定义 数组大小 // int bufferSize = 1024 * 10 * 10; byte[] b = new byte[102400]; int len = 0; for (int i = 0; i < filenames.length; i++) { File tFile = new File(filenames[i]); if (!tFile.exists()) continue; String shortName = tFile.getName(); zos.putNextEntry(new ZipEntry(shortName)); FileInputStream inStream = new FileInputStream(filenames[i]); BufferedInputStream BuffedInStream = new BufferedInputStream(inStream); while ((len = BuffedInStream.read(b)) != -1) { zos.write(b, 0, len); } zos.flush(); inStream.close(); BuffedInStream.close(); } deleteCatalogAndFiles(documentPath);//删除目录 }catch(Exception e) { logger.error("压缩文件时出错", e); }finally { try { zos.close(); } catch (IOException e) { logger.error("关闭流出错", e); } } return resultPath;}/* * 删除文件目录下的文件及目录 */public void deleteCatalogAndFiles(String documentPath){ File file = new File(documentPath); if (file.isDirectory()){ String[] children = file.list();//文件夹目录列表 for (String child : children) { deleteCatalogAndFiles(documentPath+ "//" + child); } } file.delete();}
0 0
- 读取目录下的文件将文件压缩
- Python读取某个目录下的zip压缩包解压开后计算每个小文件的md5值,并将压缩包名字、里面小文件名字、以及对应的md5值写入csv文件
- 读取某个目录下的文件
- 读取目录下的文件列表
- php读取目录下的所有文件
- 读取Assets目录下的文件
- Android 读取assets目录下的文件
- 读取指定目录下的所有文件
- Android 读取 assets目录下的文件
- 读取多目录下的文件
- 读取assets目录下的文件
- java 文件 读取目录下的所有文件(包括子目录)
- 如何解压assets目录下的压缩包文件
- gzip压缩指定目录下的所有文件
- 压缩与解压指定目录下的指定文件
- Linux下读取一个目录下的多个文件
- windows下c++读取一个目录下的所有文件
- 把一个目录下的几个目录及文件压缩到一个zip文件中
- QML简单的动画切换Rectangle层次
- 二进制ASCII判断文件的类型
- Ubuntu成长历程-内核配置menuconfig详解(三)
- 基于misc框架的驱动分析
- php.ini
- 读取目录下的文件将文件压缩
- CodeForces 351A 智商题
- I2C死锁原因及解决方法
- mybatis配置一对多关系
- SDL 在 MFC 框架下的鼠标样式设置失效
- Spring学习笔记(二十二):解决 Missing artifact org.apache.mina:mina-core:bundle:2.0.9
- (09)Struts2 请求的扩展名问题
- 记录一下做的几道编程题
- python基础:multiprocessing的使用