Zip4j は、UNIX で作成された gz ファイルを開いたり抽出したりできません。7Zip は問題なくファイルを開きます。zip は暗号化されていません。ファイル内のファイル ヘッダーを読み取る前に (ホスト タイプなど) 設定するオプションはありますか。
File file = new File("D:/unziptest/i6163795A140507230411.dl.gz");
try {
System.out.println(file.length());
ZipFile zipFile = new ZipFile(file);
if (!zipFile.isEncrypted()){
if(zipFile.getFileHeaders()!=null){
List<FileHeader> files = zipFile.getFileHeaders();
for(FileHeader fileHeader : files){
if(fileHeader!=null){
System.out.println(fileHeader.getFileName());
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
出力
16388
net.lingala.zip4j.exception.ZipException: zip headers not found. probably not a zip file
at net.lingala.zip4j.core.HeaderReader.readEndOfCentralDirectoryRecord(HeaderReader.java:122)
at net.lingala.zip4j.core.HeaderReader.readAllHeaders(HeaderReader.java:78)
at net.lingala.zip4j.core.ZipFile.readZipInfo(ZipFile.java:425)
at net.lingala.zip4j.core.ZipFile.isEncrypted(ZipFile.java:722)
at UnzipFile.main(UnzipFile.java:35)