在org .commons.ziparchiveentry如何给外文件名

在ZipArchiveEntry中如何定义文件名(压缩文件的名称除英文以外的其他语言)。 当我定义

ZipArchiveEntry ze = new ZipArchiveEntry(filename);

它适用于Linux机器,但不适用于Windows。 请帮忙。

更新

使用ZipArchiveEntry我试图用外文名称压缩个人文件。 压缩后,我从该zip文件中提取文件。 在Linux中,它正确地返回文件名。 但在Windows中文件名已损坏

同样使用jdk报告的问题也是如此。

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4244499

http://www.coderanch.com/t/454532/java/java/Corrupt-file-compression


您可以使用getEntries方法隐式获取文件名

Enumeration<?> en = zip.getEntries();
ZipArchiveEntry zipEntry = null;
while (en.hasMoreElements()) {
    zipEntry = (ZipArchiveEntry) en.nextElement();
}

然后,您可以在zipEntry上调用getName来检查名称

"i18n name string".equals(zipEntry.getName())

希望能帮助到你。

链接地址: http://www.djcxy.com/p/66121.html

上一篇: In org .commons.ziparchiveentry how to give the filename in foreign languages

下一篇: How to debug java depenendency failure on version of DOMImplementation