小编Luk*_*dze的帖子

Java,解压缩文件名中包含德语字符的文件夹

我正在尝试解压缩其中包含德语字符的文件夹,例如 Aufhänge 。我知道在 Java 7 中,它默认使用 utf-8,我认为“ä”是 utf-8 字符之一。这是我的代码片段

public static void main(String[] args) throws IOException {
    ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(ZIP_PATH), StandardCharsets.UTF_8);
    ZipEntry zipEntry;
    while ((zipEntry = zipInputStream.getNextEntry()) != null) {
        System.out.println(zipEntry.getName());
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误:java.lang.IllegalArgumentException: MALFORMED

它适用于 Charset.forName("Cp437"),但不适用于 StandardCharsets.UTF_8

java unzip utf-8

3
推荐指数
1
解决办法
2283
查看次数

标签 统计

java ×1

unzip ×1

utf-8 ×1