/**
* f-road.com Inc.
* Copyright (c) 2013 All Rights Reserved.
*/
package com.froad.utils;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.zip.Adler32;
import java.util.zip.CheckedOutputStream;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;
/**
* <pre>
* 压缩文件
* </pre>
*
* @author xueyunlong
* @create 2013年11月4日 下午1:13:39
* @modify
* @since JDK1.6
*/
public class FileZipUtil {
/**
* 中文条件下文件(夹)压缩
* @throws IOException
*/
public static void zipCompress(String src,String des)
throws IOException{
ZipOutputStream out=null;
try {
CheckedOutputStream cusm=
new CheckedOutputStream(new FileOutputStream(des),new Adler32());
out=new ZipOutputStream(new BufferedOutputStream(cusm));
fileZip(new File(src),out,"");
}finally{
if(out!=null){
out.close();
}
}
}
private static void fileZip(File file, ZipOutputStream out,
String base) throws IOException{
if(file.isFile()){
if(base.length()>0){
out.putNextEntry(new ZipEntry(base));
}else{
out.putNextEntry(new ZipEntry(file.getName()));
}
BufferedReader in=new BufferedReader(
new InputStreamReader(new FileInputStream(file),"ISO8859-1"));
int c;
while((c=in.read())!=-1){
out.write(c);
}
in.close();
}else if(file.isDirectory()){
File[] subFiles=file.listFiles();
// out.putNextEntry(new ZipEntry(base+File.separator));
base=base.length()!=0?base+File.separator:"";
for(File subFile:subFiles){
fileZip(subFile,out,base+subFile.getName());
}
}
}
}
- 浏览: 268601 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (187)
- spring (10)
- jquery (14)
- js (18)
- java (44)
- freemarker (7)
- 框架介绍 (1)
- tomcat (4)
- oracle (7)
- 喜欢的诗文 (4)
- linux (19)
- nokia (1)
- 那些事 (1)
- apache (3)
- dom4j (1)
- SOA (1)
- 企业架构 (2)
- baidu (1)
- svn (1)
- 测试 (4)
- liunx (0)
- memcahce (1)
- mysql (25)
- maven (4)
- 推广 (1)
- 网络 (1)
- vpn (1)
- drools (1)
- mongodb (1)
- redis (3)
- xlightweb (1)
- wifi (1)
- 学习资料 (1)
- git (1)
- 系统设计 (1)
- springboot (1)
- 自考 (0)
最新评论
-
zuo_qin_bo:
if(df==null){ //这个地方并发多的情况 ...
ThreadLocal解决dateFormat多线程错误 -
kongnan93:
好文!赞一个!!!!
jquery blockUI 居中显示 -
cxc_110928:
如果加上不能出现连续的数字或者字母 如 1234 abcd ...
用java 匹配一个数字和字母密码的正则表达式 -
wzwahl36:
http://www.atool.org/json2javab ...
JSON和JAVA的POJO的相互转换
发表评论
-
折半查找法
2019-06-17 18:11 391public static void main(String[ ... -
js 加密 java解密
2017-12-05 16:27 907https://github.com/noisyle/cr ... -
java工程师成长之路
2017-03-04 17:43 594一、基础篇 1.1 JVM 1.1.1. J ... -
java 启动jar
2017-03-04 15:40 1664#!/bin/sh PRG="$0&qu ... -
ThreadLocal解决dateFormat多线程错误
2016-09-19 17:44 2177出处 http://www.blogjava.net/ki ... -
设计模式
2016-06-02 17:11 509http://www.cnblogs.com/xing9010 ... -
list分页
2016-05-11 09:56 408//分批保存数据 if(null!=aassetO ... -
根据输入执行代码块
2015-05-11 17:25 699/** * f-road.com Inc. * Copyrig ... -
java装饰器模式
2015-03-17 18:00 866java装饰器模式 意图:动态的将责任附加到对象上什么 ... -
java适配器模式
2015-03-17 17:54 653定义:属于结构型模式,其主要作用是将一个类的接口转换成客户 ... -
Java垃圾回收机制
2015-02-04 09:43 749垃圾收集GC(Garbage Coll ... -
jvisualvm结合jstatd进行远程监控
2015-01-27 16:17 862jvisualvm是Jdk自带的,具体点,据说是jdk1 ... -
最佳线程数总结
2015-01-26 11:53 0最佳线程数: 性能压 ... -
线程dump
2015-01-26 11:19 0Java 的线程 线程是指 ... -
几种阻塞队列
2015-01-26 11:11 0转自:http://blog.csdn.net/yydcj/ ... -
线程池的原理及实现
2015-01-26 10:53 7121、线程池简介: ... -
线程同步通信技术-wait notify 用法
2014-10-22 20:58 711/** * * <pre> * 子线程 ... -
Cisco VPN Client 442
2014-10-18 21:17 162典型的Cisco VPN Client 442 错误,之前的 ... -
JDK安装
2014-10-18 15:15 756学习Java 开发的第一步就是构建开发环境,JDK(Java ... -
MultiThreadHttpClient
2014-09-15 17:05 459package com.froad.points.bankse ...
相关推荐
1初始化(创建)压缩文件 2添加指定文件到压缩文件 3添加指定文件夹(含子路径)到压缩文件 4重新初始化(打开)压缩文件 5从压缩文件解压文件 6释放(关闭)压缩文件 源码包含了封装的功能模块类以及测试类, 全部...
在PHP中生成ZIP压缩文件是一项常见的任务,尤其是在网站开发中,我们可能需要将多个文件打包成一个可下载的压缩文件,以方便用户批量获取或传输数据。本篇将详细讲解如何利用PHP的ZipArchive类来实现这一功能。 ...
在Java编程语言中,处理ZIP压缩文件是一项常见的任务,它涉及到文件和目录的打包与解压。本篇文章将深入探讨如何使用Java实现ZIP文件的压缩和解压缩操作,以及涉及的相关知识点。 首先,理解ZIP文件格式是基础。ZIP...
Java操作zip压缩格式的开源项目,功能强大而且使用方便,能完全满足Java操作Zip压缩文件,官方网址为:http://www.lingala.net/zip4j/ 可以下载到jar包、源码和示例,好像没有提供API文档。 不过需要使用代理访问...
本文将深入探讨如何使用Java来处理ZIP文件,特别是针对标题所提及的“java 中 zip压缩文件解压工具类”。我们将讨论核心的Java API,如`java.util.zip`包中的类,并通过一个名为`CompressFileUtils`的工具类来展示...
在Java编程语言中,生成ZIP压缩文件是一项常见的任务,它涉及到文件操作和数据流的处理。这个过程可以用于归档多个文件或者整个目录结构,便于存储或传输。下面我们将详细探讨如何使用Java来生成ZIP压缩文件,以及...
zip加密破解,ha_ziperello_cz.zipzip压缩文件加密破解工具zip压缩文件加密破解工具zip压缩文件加密破解工具zip压缩文件加密破解工具zip压缩文件加密破解工具zip压缩文件加密破解工具zip压缩文件加密破解工具zip压缩...
在PHP中生成zip压缩文件是Web开发中常用的功能,它能够帮助开发者打包文件或者文件夹并提供给用户下载,极大地提高了数据传输的效率。接下来,我们将详细探讨PHP生成zip压缩文件的方法。 首先,我们需要了解在PHP中...
【标题】:“新建 ZIP 压缩文件.zip” 在信息技术领域,ZIP 文件是一种常见的文件压缩格式,用于将多个文件或文件夹打包成一个单一的、更小的文件,便于存储、传输和分享。"新建 ZIP 压缩文件.zip" 指的是创建一个...
本文将详细介绍如何使用WinRAR创建ZIP压缩文件以及与ZIP格式相关的知识点。 1. **ZIP格式**:ZIP是一种广泛使用的文件存档格式,由Phil Katz在1989年开发。ZIP文件可以包含多个文件和文件夹,并且能对它们进行压缩...
ZIP文件修复工具是一种专门设计用来解决ZIP压缩文件损坏或无法正常解压问题的应用程序。ZIP是常见的文件压缩格式,广泛应用于数据备份、文件传输和存储。然而,由于各种原因,如不完整的下载、硬盘错误、病毒感染或...
不收费,本人亲测好用,破解5位密码,耗时64S 破解速度是4166090密码/秒
在Java编程中,打包文件为ZIP压缩文件以及解压缩ZIP文件是常见的操作,尤其是在处理大量数据传输或存储时。下面我们将详细探讨这个话题。 首先,Java标准库提供了`java.util.zip`包,它包含了用于处理ZIP文件的类,...
针对ZIP压缩文件创建、添加、抽出、更新和移除文件) Read/Write password protected Zip files (读写有密码保护的Zip文件) Supports AES 128/256 Encryption (支持AES 128/256算法加密) Supports ...
在使用Java对ZIP压缩文件进行解压的方式中有两种,一种是使用apache提供的ant.jar工具包,但是如果ZIP文件中含有中文名称的文件,在解压后,文件名将出现乱码,另一种是使用Java自身JDK中java.util.zip包下工具类,...
本文将详细讲解如何使用C语言来解压ZIP压缩文件,这是一个涉及文件操作、内存管理以及理解ZIP文件格式的重要技能。 首先,我们要知道ZIP文件是一种常见的文件压缩格式,它包含了多个经过压缩的数据块,每个数据块...
### Zip压缩文件数据修复技术研究 #### 摘要与背景 随着信息技术的快速发展,数据安全成为人们关注的焦点之一。Zip压缩文件作为最常见的压缩格式之一,在多种操作系统中广泛使用,例如Windows、Linux和Unix等。...
android图像识别,采用百度sdk,识别准确率基本上能用,有需求的可自行下载,需要申请百度sdk的key
在Windows环境下,创建WinRAR ZIP压缩文件的步骤通常是: 1. 选择要压缩的文件或文件夹,右键点击并选择“添加到压缩文件”。 2. 在弹出的WinRAR窗口中,可以选择压缩方法(快速、标准、最好),设置压缩级别,以及...
标题中的“新建 好压 ZIP 压缩文件.zip_java_zip”表明这是一个使用了好压软件创建的ZIP格式的压缩文件,并且与Java的ZIP处理有关。ZIP是一种常见的文件压缩格式,广泛应用于数据存储和传输,因为它能有效地减小文件...