0

java.util.zip パッケージを使用した Java での簡単な抽出方法があります。

編集: 注意として、Oracle データベース内で Java ストアド プロシージャとして実行する必要があるため、Java 1.5 でコードを実行する必要があります。

かなり長い間完全に機能していましたが、最近、名前にスペイン語の特殊文字が含まれる zip ファイルと、その中にスペイン語の特殊文字が含まれるファイルを抽出しようとしたときに、バグに遭遇しました。

コードが失敗する

 ZipEntry entry = zis.getNextEntry();

これは特殊文字によるものですか?zip が破損していないことを確認し、名前に特殊文字を含む他の zip でテストして、同じエラーが発生することを確認しました。

最後に、これが事実である場合、これに対する回避策はありますか?

4

2 に答える 2

3

Java 7では、文字エンコードを示すZipFile(File、Charset)を使用できます。

于 2012-12-10T14:54:48.897 に答える
0

org.apache.commonsには圧縮クラスがあり、さまざまなオプションがあることがわかりました。エンコーディングパラメータを指定できるため、さまざまな言語の文字を受け入れることができます。

于 2012-12-13T19:30:33.347 に答える