当前位置: 首页 > 面试题库 >

使用java.util.zip。*写入zip文件时,带有日语字符的文件名会变成垃圾。*

颜嘉福
2023-03-14
问题内容

我的目录名称包含日语字符,我需要使用java.util.zip中的zip
utils将其写入zip文件。写入zip文件成功,但是当我使用Windows的内置压缩文件实用程序或7-Zip打开生成的zip文件时,名称中带有日语字符的目录将显示为一堆垃圾字符。我的系统上确实安装了日语/东亚语言包-
我可以用日语名称创建目录,所以这不是问题。

有趣的是,如果我编写一个单独的脚本来使用java.util.zip读取生成的zip文件,则目录名是正确的,并且可以将zip的内容提取到带有日语字符的适当命名的目录中。但是我无法使用我尝试过的商业zip工具来做到这一点,这无疑是我们客户想要的。

关于导致此问题的原因以及如何解决此问题的任何想法?

我知道此错误,但是对于这种情况我仍然需要一种解决方法。


问题答案:

如果java.util.zip仍然按照本文所描述的那样运行,我不确定是否可能(使用内置类)。我之前已经看到Chilkat的Java Zip库是使它起作用的一种方式,但从未使用过。



 类似资料:
  • 我刚开始使用log4j2 我正在尝试配置xml,以便使用和附加符将日志发送到日志文件中。这个附加器工作得很好。我想使用appender,这样它就可以每天清除日志文件,但是当它第一次创建日志文件时,它没有将任何日志消息写入创建的文件中,所以我来这里是为了得到一些建议

  • 下面是通过FileBrowser将文件添加到目录的事件的问题。加载单个文件会产生一堆事件: 我认为消息的数量取决于上传zip文件的时间。我不知道如何用watchdog来解决它,下面是代码:

  • 问题内容: 如何从二进制文件写入/读取字符串? 我试过使用/ (DataOutputStream / DataInputStream),但这太麻烦了。 谢谢。 问题答案: 暂时忘掉FileWriter,DataOutputStream。 对于二进制数据,使用和分类。他们处理。 对于文本数据,使用和分类。他们处理可以存储所有类型的文本,因为它内部使用Unicode。 通过指定默认为OS编码的编码,可

  • 问题内容: 我将日志保存到sdcard上的.txt文件中,但是一旦保存了两行,它就会覆盖它并重新开始? 这是我的代码: 在恢复中挂载/ data后,/ sdcard和/ data / media / 0中的日志文件会显示完整的日志历史记录,但在设备开机时不会显示完整的日志历史记录 问题答案: 这是完成的方式。以下示例代码在单击提交按钮后将详细信息保存到文件中: 希望这可以帮助 :)

  • 问题内容: 我在这篇文章中找到了这个ZipUtils类: 如何使用java压缩文件夹本身 我对其进行了修改,以便可以传递一个zip文件名。但是,它的唯一工作方式是使用硬编码的静态字符串。从数据库中获取zippedFile字符串。我已经将dbZippedFile和hardcodedZippedFile进行了比较,它们都是相同的……也许在FileOutputStream中使用非静态字符串会产生问题吗?

  • 问题内容: 我将包含诸如 PéréquationLES HOPITAUX NEUFS.xls之 类的特殊字符 压缩 到另一个文件夹中,例如 temp 。 我可以压缩文件,但是问题是文件名自动更改为 P +¬r+¬报价LES HOPITAUX NEUFS.xls 。 如何在zip归档文件中支持Unicode字符作为文件名? 问题答案: 这一点取决于您用于创建存档的代码。在 旧 的Java压缩类不是很