如何有效处理Java中压缩文件导致的乱码问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计372个文字,预计阅读时间需要2分钟。
使用Java打包文件生成压缩文件,可能遇到两个地方出现乱码问题:内容中的中文乱码问题,以及修改sun源码的问题。解决中文乱码问题,可以修改sun的源码。使用开源的类库org.apache.tools.zip.ZipOutputStream和org.apache.tools.zip.ZipEntry,这两个类在ant.jar中。
用java来打包文件生成压缩文件,有两个地方会出现乱码:
- 内容的中文乱码问题:修改sun的源码。使用开源的类库org.apache.tools.zip.ZipOutputStream和org.apache.tools.zip.ZipEntry,这两个类ant.jar中有,可以下载使用即可。
- 压缩文件注释的中文乱码问题:zos.setComment("中文测试");通过使用设置编码的方法(zos.setEncoding("gbk");)发现问题,测试项目的编码方式为gbk,而默认编码是utf-8。
org.apache.tools.zip.ZipOutputStream默认使用项目的编码方式,通过setEncoding方法改成gbk即可解决。
本文共计372个文字,预计阅读时间需要2分钟。
使用Java打包文件生成压缩文件,可能遇到两个地方出现乱码问题:内容中的中文乱码问题,以及修改sun源码的问题。解决中文乱码问题,可以修改sun的源码。使用开源的类库org.apache.tools.zip.ZipOutputStream和org.apache.tools.zip.ZipEntry,这两个类在ant.jar中。
用java来打包文件生成压缩文件,有两个地方会出现乱码:
- 内容的中文乱码问题:修改sun的源码。使用开源的类库org.apache.tools.zip.ZipOutputStream和org.apache.tools.zip.ZipEntry,这两个类ant.jar中有,可以下载使用即可。
- 压缩文件注释的中文乱码问题:zos.setComment("中文测试");通过使用设置编码的方法(zos.setEncoding("gbk");)发现问题,测试项目的编码方式为gbk,而默认编码是utf-8。
org.apache.tools.zip.ZipOutputStream默认使用项目的编码方式,通过setEncoding方法改成gbk即可解决。

