次の方法を使用して、META-INF フォルダーとその内容を除外しています。
public static void copyWithoutMetaInf(final String originalZip, final String newZip) throws IOException
{
final ZipInputStream zip = new ZipInputStream(new FileInputStream(originalZip));
final ZipOutputStream zop = new ZipOutputStream(new FileOutputStream(newZip));
ZipEntry entry;
while((entry = zip.getNextEntry()) != null)
{
if(!entry.getName().contains("META-INF"))
{
zop.putNextEntry(entry);
}
}
zip.close();
zop.close();
}
ここにある方法: https://stackoverflow.com/a/22433569/3952266
唯一の問題は、新しいファイルを作成するときに、元のサイズの 10 分の 1 のファイルしか出力しないことです。