使用ZipOutputStream压缩文件,报没有文件被解压问题

偶得一段代码是压缩文件成zip格式的,但是遇到的问题是,含有中文的文件夹,压缩后无法打开,提示“没有文件被解压”;查询资料得出结论,jdk原生的ZipOutputStream对中文支持不太好,建议使用ant的ZipOutputStream;下载ant.jar,里边就有这个类,不用改动代码,将jar包引入工程后,由于类名一样,把java文件中原来引入的包名改一下就行了;改造后的代码:import
摘要由CSDN通过智能技术生成
  • 偶得一段代码是压缩文件成zip格式的,但是遇到的问题是,含有中文的文件夹,压缩后无法打开,提示“没有文件被解压”;
  • 查询资料得出结论,jdk原生的ZipOutputStream对中文支持不太好,建议使用ant的ZipOutputStream;
  • 下载ant.jar,里边就有这个类,不用改动代码,将jar包引入工程后,由于类名一样,把java文件中原来引入的包名改一下就行了;
  • 改造后的代码:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
//import java.util.zip.ZipEntry;
//import java.util.zip.ZipOutputStream;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;

public class FileZip {

	/**
	 * @param inputFileName
	 *            你要压缩的文件夹(整个完整路径)
	 * @param zipFileName
	 *            压缩后的文件(整个完整路径)
	 */
	public static void zip(String inputFileName, String zipFileName)
			throws Exception {
		zip(zipFileName, new File(inputFileName));
	}

	private static void zip(String zipFileName, File inputFile)
			throws Exception {
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值