@SuppressWarnings("unchecked") @Override protected void handleStart(final File startDirectory, final Collection results) throws IOException { //out = new ZipArchiveOutputStream(new BufferedOutputStream(new FileOutputStream(destination))); out = new ZipOutputStream(Files.newOutputStream(destination)); out.setMethod(ZipEntry.DEFLATED); }
@SuppressWarnings("unchecked") @Override protected void handleFile(final File file, final int depth, final Collection results) throws IOException { final String entryPath = getUnixStylePath(StringUtils.substringAfter(file.getAbsolutePath(), source.toAbsolutePath().toString() + File.separator)); //ZipArchiveEntry entry = (ZipArchiveEntry) out.createArchiveEntry(file, entryPath); //out.putArchiveEntry(entry); final ZipEntry entry = new ZipEntry(entryPath); out.putNextEntry(entry); try (final InputStream in = new BufferedInputStream(Files.newInputStream(file.toPath()))) { bytesProcessed = writeFile(in, out, callback, bytesProcessed, bytesToProcess); } finally { //out.closeArchiveEntry(); out.closeEntry(); } }
/** * {@inheritDoc} */ @SuppressWarnings("unchecked") @Override protected void handleEnd(Collection results) throws IOException { out.close(); }
@Test public final void testWriteAndReadSingleBytes() throws IOException { final ZipOutputStream zipOut = newZipOutputStream(new FileOutputStream(file)); zipOut.putNextEntry(newEntry("file")); for (int i = 0; i < data.length; i++) zipOut.write(data[i]); zipOut.close(); final ZipFile zipIn = newZipFile(file); InputStream in = zipIn.getInputStream("file"); for (int i = 0, c; (c = in.read()) != -1; i++) assertEquals(data[i] & 0xFF, c); in.close(); zipIn.close(); }
HashMaps.initialCapacity(NUM_ENTRIES)); final ZipOutputStream zos = new ZipOutputStream( buffer.getOutputSocket().newOutputStream()); for (int i = FIRST_ENTRY; i <= LAST_ENTRY; i++) { entry.setMethod(STORED); zos.putNextEntry(entry); zos.write(data); assertTrue(set.add(name)); zos.close(); assertEquals(ZIP_SIZE, buffer.getSize(Size.STORAGE));
@Override protected ZipOutputStream newZipOutputStream( OutputStream out, Charset charset) throws IOException { ZipOutputStream res = new ZipOutputStream(out, charset); res.setCryptoParameters(new WinZipAesCryptoParameters()); return res; }
@Test public final void testGetInputStream() throws IOException { final ZipOutputStream zipOut = newZipOutputStream(new FileOutputStream(file)); try { zipOut.putNextEntry(newEntry("foo")); } finally { zipOut.close(); } final ZipFile zipIn = newZipFile(file); try { zipIn.getInputStream("foo").close(); assertNull(zipIn.getInputStream("bar")); } finally { zipIn.close(); } }
String fileName = getFilename(filetype, fileNumber); ZipEntry newEntry = new ZipEntry(fileName); zipOutputStream.putNextEntry(newEntry); final InputStream is = fileResource.getInputStream(); IOUtils.copy(is, zipOutputStream); offset += resultProvider.getDataIterator().getCount(); userFileQueryService.updateOffsetInformation(query.getId(), offset); zipOutputStream.flush(); is.close(); FileUtils.deleteQuietly(fileResource.getFile());
protected ZipOutputStream newZipOutputStream( OutputStream out, ZipFile appendee) throws ZipException { return new ZipOutputStream(out, appendee); }
private long writeFile(BufferedInputStream in, ZipOutputStream out, //ZipArchiveOutputStream out, ProgressObserver observer, long bytesSoFar, long totalSize) throws IOException { long totalBytesWritten = bytesSoFar; int bytesIn = 0; byte[] buffer = new byte[BUFFER_SIZE]; while ((bytesIn = in.read(buffer)) != -1) { totalBytesWritten += bytesIn; int progressSoFar = (int) ((UNITY_PERCENT * totalBytesWritten) / totalSize); observer.onProgress(progressSoFar); out.write(buffer, 0, bytesIn); } return totalBytesWritten; } }
@Test public final void testGoodGetCheckedInputStream() throws IOException { // Create test ZIP file. final String name = "entry"; final ZipOutputStream zipOut = newZipOutputStream(new FileOutputStream(file)); zipOut.putNextEntry(newEntry(name)); zipOut.write(data); zipOut.close(); final ZipFile zipIn = newZipFile(file); // Open checked input stream and join immediately. InputStream in = zipIn.getCheckedInputStream(name); in.close(); // Open checked input stream and read fully, using multiple methods. in = zipIn.getCheckedInputStream(name); final int n = data.length / 4; in.skip(n); in.read(new byte[n]); in.read(new byte[n], 0, n); while (in.read() != -1) { // read until EOF } in.close(); zipIn.close(); }
@Override protected ZipOutputStream newZipOutputStream( OutputStream out, ZipFile appendee) throws ZipException { ZipOutputStream res = new ZipOutputStream(out, appendee); res.setCryptoParameters(new WinZipAesCryptoParameters()); return res; }
protected ZipOutputStream newZipOutputStream(OutputStream out) throws IOException { return new ZipOutputStream(out); }
private long writeFile(final InputStream in, final ZipOutputStream out, //ZipArchiveOutputStream out, final ProgressObserver observer, final long bytesSoFar, final long totalSize) throws IOException { long totalBytesWritten = bytesSoFar; int bytesIn = 0; byte[] buffer = new byte[BUFFER_SIZE]; while ((bytesIn = in.read(buffer)) != -1) { totalBytesWritten += bytesIn; int progressSoFar = (int) ((UNITY_PERCENT * totalBytesWritten) / totalSize); observer.onProgress(progressSoFar); out.write(buffer, 0, bytesIn); } return totalBytesWritten; } }
private void append( final int off, final int len, final byte[] data) throws IOException { final ZipOutputStream out; if (file.exists()) { final ZipFile in = newZipFile(file); in.close(); out = newZipOutputStream(new FileOutputStream(file, true), in); } else { out = newZipOutputStream(new FileOutputStream(file)); } try { for (int i = 0; i < len; i++) { final String name = off + i + ".txt"; out.putNextEntry(newEntry(name)); out.write(data); } } finally { out.close(); } } }
@Override protected ZipOutputStream newZipOutputStream(OutputStream out) throws IOException { ZipOutputStream res = new ZipOutputStream(out); res.setCryptoParameters(new WinZipAesCryptoParameters()); return res; }
@SuppressWarnings("unchecked") @Override protected void handleStart(File startDirectory, Collection results) throws IOException { //out = new ZipArchiveOutputStream(new BufferedOutputStream(new FileOutputStream(destination))); out = new ZipOutputStream(new FileOutputStream(destination)); out.setMethod(ZipEntry.DEFLATED); }
@SuppressWarnings("unchecked") @Override protected void handleFile(File file, int depth, Collection results) throws IOException { String entryPath = getUnixStylePath(StringUtils.substringAfter(file .getAbsolutePath(), sourcePath)); //ZipArchiveEntry entry = (ZipArchiveEntry) out.createArchiveEntry(file, entryPath); //out.putArchiveEntry(entry); ZipEntry entry = new ZipEntry(entryPath); out.putNextEntry(entry); final BufferedInputStream in = new BufferedInputStream(new FileInputStream(file)); try { bytesProcessed = writeFile(in, out, callback, bytesProcessed, bytesToProcess); } finally { //out.closeArchiveEntry(); out.closeEntry(); in.close(); } }
private ZipOutputStream getZipFileOutputStream() throws IOException { String fileName = query.getId().toString(); if (query.getOffset() == null || query.getOffset() == 0l) { OutputStream stream = fileStorage.createFile(query.getUser(), fileName); return new ZipOutputStream(stream, Charsets.UTF_8); } OutputStream stream = fileStorage.appendFile(query.getUser(), fileName); // FIXME Is there any other way to append archive file? ZipFile zipFile = new ZipFile(fileStorage.readFile(query.getUser(), fileName)); return new ZipOutputStream(stream, zipFile); }
/** * @throws IOException * */ public void close() throws IOException { out.close(); }