- 浏览: 1783800 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (528)
- java基础 (35)
- oracle (23)
- 项目管理 (10)
- 代码架构 (27)
- java线程与进程 (2)
- 盈利模式 (10)
- 性能测试 (1)
- Ophone (2)
- web (6)
- asp (0)
- php (1)
- c# (1)
- Ruby (0)
- jboss (4)
- java基础之面试篇 (7)
- 数据查询优化 (1)
- weblogic (3)
- EJB (1)
- EXT (6)
- jquery (8)
- struts2 (2)
- struts1 (1)
- css (1)
- javascript (4)
- SSI (9)
- linux (9)
- c++ (6)
- 网络安全 (3)
- swing (2)
- 嵌入式 (1)
- 图像处理(机器人智能技术) (1)
- vb (2)
- mysql (2)
- sqlserver (10)
- dephi (0)
- Android (4)
- hadoop (1)
- maven (4)
- mybatis (1)
- html5 (1)
- 算法 (0)
- 高并发架构总结 (1)
- 时事评论 (4)
- 有些话不能不说 (35)
- 琴棋书画 (0)
- 教育 (1)
- 创业需要的 (4)
- 产品经理需要的 (4)
- 小南那些青涩的文章 (9)
- 如何创新 (4)
- 历史借鉴之秦汉 (1)
- 历史借鉴之三国 (1)
- 历史借鉴之魏晋 (1)
- 历史借鉴之隋唐 (1)
- 历史借鉴之南北宋 (1)
- 历史借鉴之近现代史 (1)
- 好工具我来推荐 (4)
- 汇编 (14)
最新评论
-
bilimeng:
求教,ConcurrentHashMap不是线程安全的么,为啥 ...
架构师之jdk8-----------------ConcurrentHashMap快速构建本地缓存和单例模式 -
baiducctv5:
wtaisi 写道wtaisi 写道|||||||||
spring aop中的propagation的7种配置的意思 -
zhangdong92:
另外内存泄漏一般也不是指计算时溢出。而是指某些对象已经不再使用 ...
java基础之面试篇三---int,float,long,double取值范围,内存泄露 -
zhangdong92:
Long.MAX_VALUE应该是(2^63)-1,而不是64 ...
java基础之面试篇三---int,float,long,double取值范围,内存泄露 -
nannan408:
java-lxm 写道好湿好湿好湿谢谢: )。
游南巅之晚秋
package ejbModule.util; 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; /** * 文件压缩(支持中文文件名) * * @author gaoyusi * */ public class FileHelper { /** * 中文条件下文件(夹)压缩 * * @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()); } } } public static void main(String[] args) throws IOException { FileHelper.zipCompress("d:\\test","d:\\test1.zip"); } }
注意引入Ant.jar.
发表评论
-
java 序列化和反序列化(针对字符串的例子)
2014-11-04 14:09 42661.前言. 摘自:http://blog.csdn.ne ... -
java的addall和system.arraycopy的效率对比
2014-07-11 18:22 14841.前言。 如题。 2.对比。 addall ... -
java时间转换总结
2014-07-01 09:35 28281.如题。 后续将时间问题都放本篇。 2.java时间处理 ... -
System.arraycopy把多个byte数组合并为一个byte数组,节省空间。
2014-05-22 14:34 53681.前言。 如题。 2.代码。 publi ... -
jdk5后并发线程优雅的创建方式ExecutorService+Callable比thread和runable两种方式简单和实用,可以替代后两者。
2014-01-23 16:48 23101.前言。 如题。ExecutorService可用在并 ... -
eclipse指定jvm路径,在没有配置jvm环境变量的时候可直接打开。
2014-01-10 15:37 24421.前言。 如题。 2.代码。 这个写在eclipse.i ... -
java如何最小值int变成最大值?可作为字符串排序使用
2013-11-30 00:29 22671.前言。 如题。 2.例子,可以直接运行。 p ... -
Myeclipse copy的工程无法发布的问题-Exploded location overlaps an existing deployment
2013-06-09 09:16 11401.前言。 直接copy,直接在Myeclipse下面 ... -
Comparator和Comparable在排序中的应用
2012-11-06 10:53 962Comparator可以实现数组排序,与原类没有很大耦合。 ... -
Myeclipse6.5不能启动和运行缓慢、运行错误的一些问题总结
2012-03-15 11:32 2164Myeclipse6.5对1.6支持部好,最好把ec ... -
为什么new FileOutPutStream和new File创建不了文件?java.io.FileNotFoundException 系统找不到指定的路径
2012-01-04 23:27 70525FileOutPutStream在c盘等一级目录 ... -
如何让页面一打开就远程自动下载文件
2012-01-03 19:52 2834在页面或者后台response,直接用文件头加你的文件,文件流 ... -
java如何打包zip等压缩文件
2012-01-03 19:35 2406直接调用jdk的类可以了。 package javai ... -
myclipse的export失败的一个问题
2011-09-25 12:48 1456在用eclipse将工程导出为jar或者可 ... -
Java如何定义三维数组
2011-09-10 20:21 12692java 定义三维数组,有很多方法,这里举两种: 1.直接定 ... -
一个Myeclipse视图跑出来,脱离窗口的问题
2011-02-13 17:16 4034也许经常使用Myeclipse的程序员会发现,视图窗口有 ... -
Map和Properties的遍历例子
2010-12-19 23:18 1301prperties的遍历有点麻烦,map的遍历有entrySe ... -
StringBuffer和Double.ValueOf一起用导致的错误
2010-12-04 16:36 2613StringBuffer虽然是同步的,然而如果不注意它的 ... -
线程wait和notify的针对每个线程,实现·随时暂停和唤醒
2010-11-25 12:55 1812多线程的利用在进行进程调度中具有重要的意义,是java的 ... -
Unicode和汉字的相互转化
2010-11-08 22:23 1446import java.util.regex.Matcher; ...
相关推荐
总的来说,利用Apache Ant的ant.jar库,无论是通过Java代码还是Ant构建文件,都能方便、高效地解压缩ZIP文件,而且对于包含中文文件名的情况,它提供了良好的支持。在实际开发中,理解并熟练运用这类工具可以极大地...
这个名是名离自ant原码的,由于java.util.zip处理中文文件名时有问题可以用这个包代替那个使用就不会有中文问题了,我加了一个ZipTool.java,这个就是一个示例文件和方法打包文件。 <br>特点: 一、自有原码不...
总的来说,"apache-ant-zip.jar"和"ZipUtil.java"为开发者提供了解决中文乱码问题的工具和方法,使得在使用Apache Ant进行构建过程中,可以正确地处理包含中文文件名的ZIP文件,从而提高项目的可移植性和用户体验。...
`ant.jar`是一个非常重要的工具,尤其对于解决Java处理中文文件时可能出现的乱码问题。本篇文章将深入探讨`ant.jar`的用途、功能以及如何在Java项目中使用它来优化文件压缩操作。 `ant.jar`是Apache Ant的核心库,...
项目中碰到问题.jdk zipEntry 压缩中文文件名乱码 上网查了下,有两种方法,一种修改jdk ZipInputStream及ZipOutputStream 的源文件,比较麻烦,不建议此项. 第二种 就是拿来主义,因为 开源项目 Ant 里已经有...
### JAVA解压ZIP多层目录文件(需ant.jar) #### 概述 本文将详细介绍一个Java方法,该方法用于解压包含多层目录结构的ZIP文件,并能够支持中文文件名。这种方法利用了Apache Ant库中的`org.apache.tools.zip....
apache-ant-zip.jar包及用法 用过java做压缩或解压的都知道,jdk提供的zip只能按UTF-8格式处理,所有jdk提供的zip不能支持中文文件名,可以采用Apache的zip包解决中文文件名问题。
本文将深入探讨如何利用ant.jar中的API创建一个自定义的文件压缩工具类,实现对文件和目录的zip与unzip操作,并关注编码设置的重要性。 首先,我们需要导入ant.jar库到项目中。在Java中,我们可以通过Maven或Gradle...
标题中的"ant-appportal-0.1.jar.zip"是一个压缩文件,它包含了"ant-appportal-0.1.jar"和"ant.license.txt"两个文件。这个文件名暗示了这可能是一个与Apache Ant相关的应用门户(AppPortal)的组件,版本为0.1。...
《Ant与Eclipse集成:JVM1.2版本1.0的jar.zip包解析》 在软件开发领域,Ant和Eclipse是两个重要的工具。Ant是Apache软件基金会下的一个Java项目,它是一个基于XML的构建工具,常用于自动化Java项目的构建、测试和...
Ant使用了自己的实现来处理ZIP文件,其内部的`org.apache.tools.ant.types.ZipFileSet`和`org.apache.tools.ant.taskdefs.Zip`类在处理包含中文文件名的ZIP时表现得更为友好。Ant默认使用UTF-8编码,所以它能更好地...
通过这种方式,Apache Ant的`ant.jar`包可以很好地解决Java标准库在处理中文文件名压缩时可能出现的乱码问题。确保在处理非ASCII字符时正确设置文件和编码,能有效避免类似问题的发生。 此外,如果你在其他Java压缩...
标题“ant-nodeps.jar.zip”指的是一个压缩文件,其中包含了Ant构建工具的一个特定版本,去除了外部依赖的jar包。这个文件的目的是为了方便开发者在没有其他额外库的情况下使用Ant。Ant是一个Java编写的开源构建工具...
总的来说,Apache Ant 1.7.0.jar提供了解决Android ZIP解压中文乱码问题的功能,通过自定义解压字符编码,如设置为UTF-8,可以确保中文文件名在解压缩过程中的正确性。而`ZipEntry`是Java处理ZIP文件的核心类,虽然...
标题中的"ant-trax-1.6.2.jar.zip"是一个包含特定版本(1.6.2)的Ant Trax库的压缩文件,它被封装在`.zip`格式中。这个文件名暗示了该库是Java环境下的一个组件,因为`.jar`是Java档案文件的扩展名,用于存储类文件...
例如,你可以使用Ant的`<zip>`任务来创建ZIP文件,通过指定`encoding`属性来解决中文乱码问题: ```xml <zip destfile="output.zip" encoding="UTF-8"> **/*"/> </zip> ``` 在这个Ant脚本中,`<zip>`...
描述中提到的“解决ZipOutputStream压缩包内中文文件名乱码的问题,setEncoding("GBK")”,揭示了一个关键点:在使用`ZipOutputStream`创建包含中文文件名的Zip文件时,我们需要指定正确的字符编码。默认情况下,`...
"ant-jakarta-regexp-1.6.jar.zip" 是一个包含了Ant Jakarta Regexp 1.6版本的库文件,用于扩展Ant的功能,使其能够处理和操作基于正则表达式的任务。 Ant Jakarta Regexp库是Ant对Java正则表达式API的一个增强,它...
标题中的"ant-xalan2-1.6.1.jar.zip"是一个特定的文件名,它包含两个关键组件:`ant-xalan2-1.6.1.jar`和`.zip`。`.zip`表明这是一个压缩文件格式,通常用于归档和传输多个文件。在这个例子中,压缩包里面只有一个...
在Ant 1.6版本中,提供了一个名为"ant-1.6-sources.jar.zip"的压缩包,这个文件包含了Ant 1.6版本的源代码,对于学习和理解Ant的工作原理以及扩展其功能具有极高的价值。 首先,让我们深入了解Ant的核心概念。Ant的...