try (org.apache.tools.zip.ZipFile zf = new org.apache.tools.zip.ZipFile(file, "utf-8")) { Set<String> dirSet = new HashSet<>(); StreamUtils.enumerationAsStream(zf.getEntries()).forEach(ze -> { String name = ze.getName(); if (ze.isDirectory()) {
Enumeration<ZipEntry> entries = zip.getEntries();
/** * Returns <code>true</code> if the file exists and is signed with * the signature specified, or, if <code>name</code> wasn't * specified, if the file contains a signature. * @param zipFile the zipfile to check * @param name the signature to check (may be killed) * @return true if the file is signed. * @throws IOException on error */ public static boolean isSigned(File zipFile, String name) throws IOException { try (ZipFile jarFile = new ZipFile(zipFile)) { if (null == name) { return StreamUtils.enumerationAsStream(jarFile.getEntries()) .anyMatch(e -> e.getName().startsWith(SIG_START) && e.getName().endsWith(SIG_END)); } name = replaceInvalidChars(name); boolean shortSig = jarFile.getEntry(SIG_START + name.toUpperCase() + SIG_END) != null; boolean longSig = false; if (name.length() > SHORT_SIG_LIMIT) { longSig = jarFile.getEntry( SIG_START + name.substring(0, SHORT_SIG_LIMIT).toUpperCase() + SIG_END) != null; } return shortSig || longSig; } }
StreamUtils.enumerationAsStream(zf.getEntries()).forEach(entry -> { Resource r = new ZipResource(srcFile, encoding, entry); String name = entry.getName();
Enumeration<ZipEntry> entries = zf.getEntries(); while (entries.hasMoreElements()) { ZipEntry ze = entries.nextElement();
Enumeration<? extends ZipEntry> entryEnum = zipFile.getEntries(); if (null != entryEnum) { while (entryEnum.hasMoreElements()) {
Enumeration<? extends ZipEntry> entryEnum = zipFile.getEntries(); if (null != entryEnum) { while (entryEnum.hasMoreElements()) {
private static void readPack() throws Exception { String basePath = "/opt/"; String filename = "/out/zssq-360.apk"; ZipFile file = new ZipFile(basePath + filename); Enumeration<? extends ZipEntry> entries = file.getEntries(); while (entries.hasMoreElements()) { ZipEntry entry = entries.nextElement(); System.out.println(entry.getName()); } }
private static Map<ZipEntry, byte[]> readZipAllEntry(ZipFile file) throws Exception { Map<ZipEntry, byte[]> entryMaps = new HashMap<ZipEntry, byte[]>(); Enumeration<? extends ZipEntry> entries = file.getEntries(); while (entries.hasMoreElements()) { ZipEntry entry = entries.nextElement(); int len = -1; byte[] data = new byte[512]; InputStream istream = file.getInputStream(entry); ByteArrayOutputStream bos = new ByteArrayOutputStream(); while ((len = istream.read(data, 0, 512)) != -1) { bos.write(data, 0, len); } bos.close(); istream.close(); byte[] result = bos.toByteArray(); entryMaps.put(entry, result); } return entryMaps; } }
public static boolean unZipWithoutOverWrite(String unZipFileName, String destFileName) { File unzipFile = new File(unZipFileName); if (StringUtils.isBlank(destFileName) || destFileName.trim().length() == 0) destFileName = unzipFile.getParent(); File destFile; ZipFile zipFile = null; try { zipFile = new ZipFile(unzipFile, "GBK"); for (Enumeration entries = zipFile.getEntries(); entries .hasMoreElements();) { ZipEntry entry = (ZipEntry) entries.nextElement(); destFile = new File(destFileName, entry.getName()); unZipFile(destFile, zipFile, entry, false); // 执行解压 } } catch (Exception e) { log.error("解压ZIP文件异常", e); return false; } finally { try { assert zipFile != null; zipFile.close(); } catch (Exception e) { log.error("异常", e); } } return true; }
for (Enumeration entries = zip.getEntries(); entries.hasMoreElements();) { ZipEntry entry = (ZipEntry) entries.nextElement(); String zipEntryName = entry.getName();
throw new Exception("要解压的文件不存在!"); Enumeration<?> e = zipFile.getEntries(); while (e.hasMoreElements()) { ZipEntry zipEnt = (ZipEntry) e.nextElement();
try { zipFile = new ZipFile(unzipFile, "GBK"); for (Enumeration entries = zipFile.getEntries(); entries .hasMoreElements();) { ZipEntry entry = (ZipEntry) entries.nextElement();
ZipFile zf = new ZipFile(zipFile); for (Enumeration<ZipEntry> ent = zf.getEntries(); ent.hasMoreElements();) { ZipEntry entry = ent.nextElement(); file = new File(target + entry.getName());
zipFile = new ZipFile(srcZipFile); for (Enumeration entries = zipFile.getEntries(); entries .hasMoreElements();) { zipEntry = (ZipEntry) entries.nextElement();
Enumeration e = zf.getEntries(); while (e.hasMoreElements()) { ZipEntry ze2 = (ZipEntry) e.nextElement();
Enumeration entries = zip.getEntries(); while (entries.hasMoreElements()) { ZipEntry entry = (ZipEntry) entries.nextElement();
private static void unzipToDirectory(ZipFile zipFile, File destDir) throws IOException { byte[] buffer = new byte[4096]; Enumeration entries = zipFile.getEntries(); while (entries.hasMoreElements()) { ZipEntry entry = (ZipEntry) entries.nextElement(); if (entry.isDirectory()) { File dir = new File(destDir, entry.getName()); InstallUtils.createDirectory(dir); } else { File file = new File(destDir, entry.getName()); InstallUtils.createDirectory(file.getParentFile()); OutputStream out = null; InputStream in = null; try { out = new BufferedOutputStream(new FileOutputStream(file)); in = zipFile.getInputStream(entry); Unzip.copy(in, out, buffer); } finally { InstallUtils.close(in); InstallUtils.close(out); } Unzip.setFilePermissions(file, entry); } } }
List<ZipEntry> entries = Collections.<ZipEntry>list(zipFile.getEntries()); for(ZipEntry entry : entries) { if (isValidEntry(entry)) {
Enumeration<ZipEntry> entries = zip.getEntries();