class ZipExtractor {

    public static void extractAll(File zipFile, File destination) throws IOException {
        try (FileInputStream fs = new FileInputStream(zipFile.toString());
             ZipInputStream zipInputStream = new ZipInputStream(fs)) {

            byte[] buffer = new byte[1024];
            ZipEntry zipEntry = zipInputStream.getNextEntry();
            while (zipEntry != null) {
                extractEntry(destination.toPath().normalize().toFile(), zipInputStream, buffer, zipEntry);
                zipEntry = zipInputStream.getNextEntry();
            }
        }
    }

}