List of usage examples for java.util.zip ZipEntry getName
public String getName()
From source file:Main.java
public static void unCompress(String zipPath, String toPath) throws IOException { File zipfile = new File(zipPath); if (!zipfile.exists()) return;// w w w . jav a 2 s. c o m if (!toPath.endsWith("/")) toPath += "/"; File destFile = new File(toPath); if (!destFile.exists()) destFile.mkdirs(); ZipInputStream zis = new ZipInputStream(new FileInputStream(zipfile)); ZipEntry entry = null; try { while ((entry = zis.getNextEntry()) != null) { if (entry.isDirectory()) { File file = new File(toPath + entry.getName() + "/"); file.mkdirs(); } else { File file = new File(toPath + entry.getName()); if (!file.getParentFile().exists()) file.getParentFile().mkdirs(); FileOutputStream fos = null; try { fos = new FileOutputStream(file); byte buf[] = new byte[1024]; int len = -1; while ((len = zis.read(buf, 0, 1024)) != -1) { fos.write(buf, 0, len); } } finally { if (fos != null) { try { fos.close(); } catch (Exception e) { } } } } } } finally { zis.close(); } }
From source file:com.mc.printer.model.utils.ZipHelper.java
/** * jar????/* w w w . ja v a 2 s . com*/ * * @param jar ????jar * @param subDir jar??????? * @param loc ???? * @param force ???? * @return */ public static boolean unZip(String jar, String subDir, String loc, boolean force) { try { File base = new File(loc); if (!base.exists()) { base.mkdirs(); } ZipFile zip = new ZipFile(new File(jar)); Enumeration<? extends ZipEntry> entrys = zip.entries(); while (entrys.hasMoreElements()) { ZipEntry entry = entrys.nextElement(); String name = entry.getName(); if (!name.startsWith(subDir)) { continue; } //subDir name = name.replace(subDir, "").trim(); if (name.length() < 2) { log.debug(name + " < 2"); continue; } if (entry.isDirectory()) { File dir = new File(base, name); if (!dir.exists()) { dir.mkdirs(); log.debug("create directory"); } else { log.debug("the directory is existing."); } log.debug(name + " is a directory"); } else { File file = new File(base, name); if (file.exists() && force) { file.delete(); } if (!file.exists()) { InputStream in = zip.getInputStream(entry); FileUtils.copyInputStreamToFile(in, file); log.debug("create file."); in.close(); } else { log.debug("the file is existing"); } log.debug(name + " is not a directory"); } } zip.close(); } catch (ZipException ex) { ex.printStackTrace(); log.error("file unzip failed.", ex); return false; } catch (IOException ex) { ex.printStackTrace(); log.error("file IO failed", ex); return false; } return true; }
From source file:be.fedict.eid.applet.service.signer.odf.ODFUtil.java
/** * Check if a file / zip entry is to be signed * /* ww w. j a v a2s . c o m*/ * @param zipEntry * @return true if zip entry is to be signed */ public static boolean isToBeSigned(ZipEntry zipEntry) { String name = zipEntry.getName(); /* OOo 3.0/3.1 bug: don't sign mimetype stream nor the manifest */ /* * if (zipEntry.isDirectory() || name.equals(MIMETYPE_FILE) || * name.equals(MANIFEST_FILE) || */ /* Corrected in OOo 3.2 */ if (zipEntry.isDirectory() || name.equals(SIGNATURE_FILE)) { return false; } return true; }
From source file:com.pieframework.runtime.utils.Zipper.java
public static void unzip(String zipFile, String toDir) throws ZipException, IOException { int BUFFER = 2048; File file = new File(zipFile); ZipFile zip = new ZipFile(file); String newPath = toDir;/*from w ww. j a v a 2 s . c om*/ File toDirectory = new File(newPath); if (!toDirectory.exists()) { toDirectory.mkdir(); } Enumeration zipFileEntries = zip.entries(); // Process each entry while (zipFileEntries.hasMoreElements()) { // grab a zip file entry ZipEntry entry = (ZipEntry) zipFileEntries.nextElement(); String currentEntry = entry.getName(); File destFile = new File(newPath, FilenameUtils.separatorsToSystem(currentEntry)); //System.out.println(currentEntry); File destinationParent = destFile.getParentFile(); // create the parent directory structure if needed destinationParent.mkdirs(); if (!entry.isDirectory()) { BufferedInputStream is = new BufferedInputStream(zip.getInputStream(entry)); int currentByte; // establish buffer for writing file byte data[] = new byte[BUFFER]; // write the current file to disk FileOutputStream fos = new FileOutputStream(destFile); BufferedOutputStream dest = new BufferedOutputStream(fos, BUFFER); // read and write until last byte is encountered while ((currentByte = is.read(data, 0, BUFFER)) != -1) { dest.write(data, 0, currentByte); } dest.flush(); dest.close(); is.close(); } } zip.close(); }
From source file:gabi.FileUploadServlet.java
private static void unzip(String zipFilePath, String destDir) { File dir = new File(destDir); // create output directory if it doesn't exist if (!dir.exists()) dir.mkdirs();//from w ww . ja v a 2s .c om FileInputStream fis; //buffer for read and write data to file byte[] buffer = new byte[1024]; try { fis = new FileInputStream(zipFilePath); ZipInputStream zis = new ZipInputStream(fis); ZipEntry ze = zis.getNextEntry(); while (ze != null) { String fileName = ze.getName(); File newFile = new File(destDir + File.separator + fileName); System.out.println("Unzipping to " + newFile.getAbsolutePath()); //create directories for sub directories in zip new File(newFile.getParent()).mkdirs(); FileOutputStream fos = new FileOutputStream(newFile); int len; while ((len = zis.read(buffer)) > 0) { fos.write(buffer, 0, len); } fos.close(); //close this ZipEntry zis.closeEntry(); ze = zis.getNextEntry(); } //close last ZipEntry zis.closeEntry(); zis.close(); fis.close(); } catch (IOException e) { e.printStackTrace(); } }
From source file:com.termmed.utils.ResourceUtils.java
/** * Gets the resources from jar file./*from ww w. ja v a2s . c o m*/ * * @param file the file * @param pattern the pattern * @return the resources from jar file */ private static Collection<String> getResourcesFromJarFile(final File file, final Pattern pattern) { final ArrayList<String> retval = new ArrayList<String>(); ZipFile zf; try { zf = new ZipFile(file); } catch (final ZipException e) { throw new Error(e); } catch (final IOException e) { throw new Error(e); } final Enumeration e = zf.entries(); while (e.hasMoreElements()) { final ZipEntry ze = (ZipEntry) e.nextElement(); final String fileName = ze.getName(); final boolean accept = pattern.matcher(fileName).matches(); if (accept) { retval.add(fileName); } } try { zf.close(); } catch (final IOException e1) { throw new Error(e1); } return retval; }
From source file:com.compomics.pladipus.core.control.util.ZipUtils.java
private static void unzipEntry(ZipFile zipfile, ZipEntry entry, File outputDir) throws IOException { if (entry.isDirectory()) { createDir(new File(outputDir, entry.getName())); return;/*w w w. ja v a 2 s . c o m*/ } File outputFile = new File(outputDir, entry.getName()); if (!outputFile.getParentFile().exists()) { createDir(outputFile.getParentFile()); } LOGGER.debug("Extracting: " + entry); try (BufferedInputStream inputStream = new BufferedInputStream(zipfile.getInputStream(entry)); BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(outputFile))) { IOUtils.copy(inputStream, outputStream); outputStream.flush(); } }
From source file:com.ts.db.connector.ConnectorDriverManager.java
private static Driver getDriver(File jar, String url, ClassLoader cl) throws IOException { ZipFile zipFile = new ZipFile(jar); try {// ww w . j a v a 2s .co m for (ZipEntry entry : Iteration.asIterable(zipFile.entries())) { final String name = entry.getName(); if (name.endsWith(".class")) { final String fqcn = name.replaceFirst("\\.class", "").replace('/', '.'); try { Class<?> c = DynamicLoader.loadClass(fqcn, cl); if (Driver.class.isAssignableFrom(c)) { Driver driver = (Driver) c.newInstance(); if (driver.acceptsURL(url)) { return driver; } } } catch (Exception ex) { if (log.isTraceEnabled()) { log.trace(ex.toString()); } } } } } finally { zipFile.close(); } return null; }
From source file:com.diffplug.gradle.ZipMisc.java
/** * Unzips a directory to a folder./*w ww. j a v a2 s.com*/ * * @param input a zip file * @param destinationDir where the zip will be extracted to */ public static void unzip(File input, File destinationDir) throws IOException { try (ZipInputStream zipInput = new ZipInputStream(new BufferedInputStream(new FileInputStream(input)))) { ZipEntry entry; while ((entry = zipInput.getNextEntry()) != null) { File dest = new File(destinationDir, entry.getName()); if (entry.isDirectory()) { FileMisc.mkdirs(dest); } else { FileMisc.mkdirs(dest.getParentFile()); try (OutputStream output = new BufferedOutputStream(new FileOutputStream(dest))) { copy(zipInput, output); } } } } }
From source file:com.twosigma.beakerx.kernel.magic.command.ClasspathAddMvnDepsCellMagicCommandTest.java
private static void unzipRepo() { try {/*from w w w . j a v a2 s . c o m*/ ZipFile zipFile = new ZipFile(BUILD_PATH + "/testMvnCache.zip"); Enumeration<?> enu = zipFile.entries(); while (enu.hasMoreElements()) { ZipEntry zipEntry = (ZipEntry) enu.nextElement(); String name = BUILD_PATH + "/" + zipEntry.getName(); File file = new File(name); if (name.endsWith("/")) { file.mkdirs(); continue; } File parent = file.getParentFile(); if (parent != null) { parent.mkdirs(); } InputStream is = zipFile.getInputStream(zipEntry); FileOutputStream fos = new FileOutputStream(file); byte[] bytes = new byte[1024]; int length; while ((length = is.read(bytes)) >= 0) { fos.write(bytes, 0, length); } is.close(); fos.close(); } zipFile.close(); } catch (IOException e) { throw new RuntimeException(e); } }