如果我使用包含一些带有变音符号的文件的zip文件运行以下程序(例如1-2GF-969 ##JÖN.pdf),则会收到IllegalArgumentException。

我的应用程序必须支持所有语言。因此,我们将编码设置为UTF-8

所有语言都能正常工作。但是,当读读音符号时就会出现问题。

我尝试使用替代方法来压缩输入流,例如arcmexer,但它不支持汉字。

请帮我解决一下这个。

  private static void readUsingJava() {
        ZipInputStream zis;
        try {
              zis = new ZipInputStream(new FileInputStream("C:\\Check.zip"));
              ZipEntry ze;
              while ((ze = zis.getNextEntry()) != null) {
                    System.out.println("Name of the File Is  :: " + ze.getName());
              }
              zis.close();
        } catch (FileNotFoundException e) {
              e.printStackTrace();
        } catch (IOException e) {
              e.printStackTrace();
        }
  }

最佳答案

您尝试使用的ZIP存档很可能不使用UTF-8编码。本文将帮助您:http://commons.apache.org/compress/zip.html

10-08 18:36