この場合、TrueZip が最適に機能します。(少なくとも私の場合)
自己解凍 zip の形式は code1 header1 file1 です (通常の zip の形式は header1 file1 です)。コードは、zip を抽出する方法を示しています。
Truezip 抽出ユーティリティは余分なバイトについて不平を言い、例外をスローしますが
ここにコードがあります
private boolean Extract(String src, String dst, String incPath) {
TFile srcFile = new TFile(src, incPath);
TFile dstFile = new TFile(dst);
try {
TFile.cp_rp(srcFile, dstFile, TArchiveDetector.NULL);
} catch (IOException e) {
return true;
}
return true;
}
このメソッドは、Extract(new String("C:\2006Production.exe"), new String("c:\") , ""); のように呼び出すことができます。
ここから Truezip ソース ファイル パッケージ (jar) をダウンロードできますhttp://repo1.maven.org/maven2/de/schlichtherle/truezip/truezip-samples/7.5.5/truezip-samples-7.5.5-jar-with -依存関係.jar
コードにクラスをインポートする必要があります。
de.schlichtherle.truezip.file.TArchiveDetector をインポートします。de.schlichtherle.truezip.file.TFile をインポートします。
ファイルは c ドライブに抽出されます。ファイルに対して独自の操作を実行できます。これが役立つことを願っています。
ありがとう。