Java压缩解压zip文件的中文文件名在Windows和Linux环境下乱码问题的解决方案

利用ant包下的ZipFile和ZipOutputStream进行压缩和解压文件时,如果不指定编码方式,会以系统默认的编码方式进行处理 
由于Windows(中文版)系统默认的编码方式是GBK,故Ant采用默认的编码方式处理时,Windows能正常处理Zip文件中包含有中文名称的文件。 
而Linux系统默认的编码方式是UTF-8,此时ANt再采用默认的编码方式处理,就不能正常处理。 
解决方案是通过设置Ant的默认编码方式,统一设置UTF-8即可,可以设置如下代码:zipFile.setEncoding("UTF-8")和zipOutputStream.setEncoding("UTF-8")。

你可能感兴趣的:(java,windows,linux,ant)