org.apache.tools.zip.* を使って圧縮したZIPファイルを開くとエラーとなってしまう
お世話になります。
開発環境は以下のとおりです。
開発ツール NetBeans IDE 6.5
JDK 1.6.0_11
OS Windows XP SP2
ant.jar version 1.7.1
はじめ、JDK付属の「java.util.zip.ZipOutputStream」,「java.util.zip.Entry」を用いて、
ZIPファイルを作成していたのですが、
日本語名のファイルを圧縮すると文字化けしてしまい、
調べてみるとJakart Ant内のant.jarの「org.apache.tools.zip.ZipOutputStream」,「org.apache.tools.zip.Entry」を使って
import宣言を変えてsetEncodingしてしまえば簡単に出来るという情報がありました。
早速やってみたのですが、
1.ZIPファイルは作成される。このときファイルサイズがjava.util.zip.*を使ったときと同じ
2.LhaplusやWinRARといった解凍ツールを使って解凍するとエラーが
発生して中身がない
3.日本語が含まれないファイルを圧縮・解凍しても同じ現象
4.java.util.zip.* を使ったときは正常に圧縮・解凍できる(文字化けはしていますが・・・)
といった状況になってしまいました。
ロジックを何度も見直し、ZipOutputStreamのflush、closeもしっかり行っていますし、CRC32の設定やファイルサイズの設定も手順どおりにやっているつもりです。
どなたかご存知のかたがいらっしゃいましたらご教授の程、よろしくお願いいたします。
お礼
brashovさん、Apr2ndさん ご回答ありがとうございます。 ZIP形式でしたらこういうものも公開されている方がいらっしゃいました。 http://27-75-31.cocolog-nifty.com/blog/2007/09/windowszipapple_d900... こちらのスクリプトでうまくいきました。 ありがとうございました。