java代码压缩文件,文件名中中文变为乱码

青春奉献给程序 2014-05-27 06:38:01
修改了好几种字符集也没有用。解压之后的文件名称只有一半,或者为“?????”。实在是不知道什么问题。找度娘也没用。。求个人解答一下。十分感谢!
...全文
1543 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
marydan 2014-05-29
  • 打赏
  • 举报
回复
ZipOutputStream zos = new ZipOutputStream (new FileOutputStream("打包文件名")); zos.setEncoding("UTF-8");//此处修改字节码方式。
  • 打赏
  • 举报
回复
引用 3 楼 shine333 的回复:
不清楚你调用的是什么(不清楚ant.jar里面有这玩意)。反正,java.util.zip.*是不支持,也不准备支持多字节文字的了。 commons-compress支持,其他你自己看着办吧。
用代码直接执行没问题。导出来执行就不行了。会出现标题所述情况。还有其他的办法么
gxf7218926 2014-05-28
  • 打赏
  • 举报
回复
可以把JDK 自带的zip换成apache 下面的 zip 完美解决
  • 打赏
  • 举报
回复
具体代码呢?ant解压缩中文是没有问题的。
shine333 2014-05-28
  • 打赏
  • 举报
回复
1.6-的,还是老老实实,规规矩矩用我推荐的commons-compress
shine333 2014-05-28
  • 打赏
  • 举报
回复
@since JDK 1.7 new ZipOutputStream(outputStream, StandardCharsets.UTF_8)
shine333 2014-05-27
  • 打赏
  • 举报
回复
不清楚你调用的是什么(不清楚ant.jar里面有这玩意)。反正,java.util.zip.*是不支持,也不准备支持多字节文字的了。 commons-compress支持,其他你自己看着办吧。
  • 打赏
  • 举报
回复
引用 1 楼 shine333 的回复:
这个BUG,如果只用JDK版本的ZipOutputStream无解。 请改用commons-compress
已经使用ant.jar 但是还是不支持。不知道为啥。。。
shine333 2014-05-27
  • 打赏
  • 举报
回复
这个BUG,如果只用JDK版本的ZipOutputStream无解。 请改用commons-compress

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧