代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Java
】
将文件打成zip压缩包
作者:
新妃
/ 发布于
2017/9/11
/
547
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; public class ZipUtil { public static void zip(File inputFile, String zipFileName) { try { // 创建文件输出对象out,提示:注意中文支持 FileOutputStream out = new FileOutputStream(new String( zipFileName.getBytes("UTF-8"))); // 將文件輸出ZIP输出流接起来 ZipOutputStream zOut = new ZipOutputStream(out); zip(zOut, inputFile, ""); zOut.close(); } catch (Exception e) { e.printStackTrace(); } } public static void zip(ZipOutputStream zOut, File file, String base) { try { // 如果文件句柄是目录 if (file.isDirectory()) { // 获取目录下的文件 File[] listFiles = file.listFiles(); // 建立ZIP条目 zOut.putNextEntry(new ZipEntry(base + "/")); base = (base.length() == 0 ? "" : base + "/"); // 遍历目录下文件 for (int i = 0; i < listFiles.length; i++) { // 递归进入本方法 zip(zOut, listFiles[i], base + listFiles[i].getName()); } } // 如果文件句柄是文件 else { if (base == "") { base = file.getName(); } // 填入文件句柄 zOut.putNextEntry(new ZipEntry(base)); // 开始压缩 // 从文件入流读,写入ZIP 出流 writeFile(zOut, file); } } catch (Exception e) { e.printStackTrace(); } } public static void writeFile(ZipOutputStream zOut, File file) throws IOException { FileInputStream in = new FileInputStream(file); int len; while ((len = in.read()) != -1) zOut.write(len); in.close(); } public static void main(String[] args) { zip(new File("e:/test2"), "e:/ziptest.zip"); } //删除路径下所有文件 public static boolean delAllFile(String path) { boolean flag = false; File file = new File(path); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } String[] tempList = file.list(); File temp = null; for (int i = 0; i < tempList.length; i++) { if (path.endsWith(File.separator)) { temp = new File(path + tempList[i]); } else { temp = new File(path + File.separator + tempList[i]); } if (temp.isFile()) { temp.delete(); } if (temp.isDirectory()) { delAllFile(path + "/" + tempList[i]);// 先删除文件夹里面的文件 delFolder(path + "/" + tempList[i]);// 再删除空文件夹 flag = true; } } return flag; } public static void delFolder(String folderPath) { try { delAllFile(folderPath); // 删除完里面所有内容 String filePath = folderPath; filePath = filePath.toString(); java.io.File myFilePath = new java.io.File(filePath); myFilePath.delete(); // 删除空文件夹 } catch (Exception e) { e.printStackTrace(); } } }
试试其它关键字
同语言下
.
List 切割成几份 工具类
.
一行一行读取txt的内容
.
Java PDF转换成图片并输出给前台展示
.
java 多线程框架
.
double类型如果小数点后为零则显示整数否则保留两位小
.
将图片转换为Base64字符串公共类抽取
.
sqlParser 处理SQL(增删改查) 替换schema 用于多租户
.
JAVA 月份中的第几周处理 1-7属于第一周 依次类推 29-
.
java计算两个经纬度之间的距离
.
输入时间参数计算年龄
可能有用的
.
List 切割成几份 工具类
.
一行一行读取txt的内容
.
Java PDF转换成图片并输出给前台展示
.
java 多线程框架
.
double类型如果小数点后为零则显示整数否则保留两位小
.
将图片转换为Base64字符串公共类抽取
.
sqlParser 处理SQL(增删改查) 替换schema 用于多租户
.
JAVA 月份中的第几周处理 1-7属于第一周 依次类推 29-
.
java计算两个经纬度之间的距离
.
输入时间参数计算年龄
新妃
贡献的其它代码
(
13
)
.
合并数据,并以逗号连接数据
.
将文件打成zip压缩包
.
发送Get/Post请求
.
aspx如何调用.cs参数的值
.
爬取网站数据
.
实现文本框文本域光标处插入图片文本的插件(并且光标
.
实现高度不固定的div元素模块在页面中水平垂直居中
.
textarea自动增高并隐藏滚动条
.
屏蔽网页中的错误提示信息
.
更换网页背景的jquery代码(写入cookie)
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3