最近在做一个项目需要用到解压,选用的是ant.jar来做解压和压缩。在web项目中直接使用没有发现乱码现象。 可是在android中发现中文会出现乱码,经过查找资料,只要简单一句就可以解决乱码问题。
zipFile = new ZipFile(zipFilePath,"GBK");
还有就是解决在android中导入整个ant.jar导致apk变。可以zip将ant.jar解开。去掉不必要地class文件,保留zip包中的Class文件。然后项目的java 路径下加入ant的class路径. 实践证明,既可以引入apache的ant jar包的zip功能,又不让应用apk的体积增大,编译速度不受到任何影响。
压缩乱码解决
ZipOutputStream zos = new ZipOutputStream( new FileOutputStream(fileName)); zos.setEncoding("GBK");