最近在做一个项目要用到java来解压zip文件,但是java的api解压时碰到中文文件就比较脆弱了,
所以可以用ant的api来解压。下面是简单的java代码
ZipFile zipFile = new ZipFile("d:\\a.zip");
String strPath, gbkPath, strtemp;
strPath = tempFile.getAbsolutePath();
java.util.Enumeration e = zipFile.getEntries();
while (e.hasMoreElements()) {
ZipEntry zipEnt = (ZipEntry) e.nextElement();
gbkPath = zipEnt.getName();
if (zipEnt.isDirectory()) {
strtemp = strPath + File.separator + gbkPath;
File dir = new File(strtemp);
dir.mkdirs();
continue;
} else {
// 读写文件
InputStream is = zipFile.getInputStream(zipEnt);
BufferedInputStream bis = new BufferedInputStream(is);
gbkPath = zipEnt.getName();
strtemp = strPath + File.separator + gbkPath;
// 建目录
new File(strtemp.substring(0, strtemp
.lastIndexOf(File.separator) > strtemp
.lastIndexOf("/") ? strtemp
.lastIndexOf(File.separator) : strtemp
.lastIndexOf("/"))).mkdirs();
FileOutputStream fos = new FileOutputStream(strtemp);
BufferedOutputStream bos = new BufferedOutputStream(fos);
int c;
while ((c = bis.read()) != -1) {
bos.write(c);
}
bos.flush();
bos.close();
fos.close();
}
}
zipFile.close();
ps:最后在部署到weblogic8.1.5时竟然不能用,看了一下原来weblogic的环境中已经包含了一个低版本的ant.jar,
故须在weblogic启动的环境变量中增加新的ant.jar.
分享到:
相关推荐
使用Ant构建批量压缩js、css文件脚本
利用ant api做的遍历并解压各种压缩文件格式的源代码 支持 zip, (当然) gzip tar gz bz2 bz 文件包括ant.jar, 源代码 有问题可以留言,我会及时回复 ziptest下面是用来做测试的目录。 请解压到 C:\temp\ziptest ...
NULL 博文链接:https://wintys.iteye.com/blog/426090
NULL 博文链接:https://lkjust08.iteye.com/blog/439950
利用ant.jar解压缩zip包的工具类,内含ant.jar包,可以解决文件为中文的问题,大家随便看看
使用ant.jar工具通过java程序来解压tar包文件,支持中文文件名。
基于ant.jar的文件(夹)压缩解压工具,支持完整目录树压缩和就解压,支持编码设置
用于ant压缩文件(zip格式),ant.jar
uicompressor-2.4.7文件,ant 1.8.2 安装文件,以及例子,使用说明文档。成功运行。
在使用Java对ZIP压缩文件进行解压的方式中有两种,一种是使用apache提供的ant.jar工具包,但是如果ZIP文件中含有中文名称的文件,在解压后,文件名将出现乱码,另一种是使用Java自身JDK中java.util.zip包下工具类,...
2、指定文件夹(文件夹中必须有一个文件),程序会自动的压缩文件为 zip,然后下载删除源文件与压缩文件。 3、可以指定文件都为最后生成为zip文件下载,且删除源文件。 1、压缩文件或者目录(只是压缩不删除):...
准备工作: 1、安装 ant:把 ant 解压到本地硬盘 c:\ant 2、设置环境变量:ANT_HOME:c:\ant 。 PATH:在原来的 PATH 开头加上 c:\ant\bin; 3、一个 ant 项目目录结构: c:\HelloWorld :项目主目录 \src :源...
这个名是名离自ant原码的,由于java.util.zip处理中文文件名时有问题可以用这个包代替那个使用就不会有中文问题了,我加了一个ZipTool.java,这个就是一个示例文件和方法打包文件。 <br>特点: 一、自有原码不...
可以解决中文的的文件,比java.util.zip自带的要好
点击+组件处的加号,将文件解压,选择里面的文件导入就能用了。 如果前端使用elementui , 那么我们使用axure的组件将会减少沟通成本,且画出来的原型好看。 2. AntDesign3.9.x_Axure_20180903.rplib 整合了Axure ...
java zip压缩和解压缩文件,附带ant.jar
下载即可导入实现压缩文件夹和文件。 代码实现请看下面网址: https://blog.csdn.net/echohuangshihuxue/article/details/81837591
主要介绍了使用Java操作Ant压缩和解压文件以及批量打包Anroid应用的教程,Ant是一个自动化部署工具,用来处理zip和tar文件非常方便,需要的朋友可以参考下
Java压缩及解压tar、tar.z格式文件, 需要apache的包ant-1.7.1.jar 这个自己去搜索下下载