gpt4 book ai didi

de.schlichtherle.truezip.zip.ZipOutputStream类的使用及代码示例

转载 作者:知者 更新时间:2024-03-13 13:08:42 24 4
gpt4 key购买 nike

本文整理了Java中de.schlichtherle.truezip.zip.ZipOutputStream类的一些代码示例,展示了ZipOutputStream类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZipOutputStream类的具体详情如下:
包路径:de.schlichtherle.truezip.zip.ZipOutputStream
类名称:ZipOutputStream

ZipOutputStream介绍

[英]Drop-in replacement for java.util.zip.ZipOutputStream.

This class starts writing ordinary ZIP32 File Format. It automatically adds ZIP64 extensions if required, i.e. if the file size exceeds 4GB or more than 65535 entries are written. This implies that the class may produce ZIP archive files which cannot be read by older ZIP implementations.

If the system property de.schlichtherle.truezip.io.zip.zip64extis set to true (case is ignored), then ZIP64 extensions are always added when writing a ZIP archive file, regardless of its size. This system property is primarily intended for unit testing purposes. During normal operations, it should not be set as many third party tools would not treat the redundant ZIP64 extensions correctly. Note that it's impossible to inhibit ZIP64 extensions.

This class provides some limited support for multithreading: You can read its properties from multiple threads, but obviously you cannot concurrently write multiple entries at the same time by different threads.
[中]作为java的替代品。util。拉链ZipOutputStream。
这个类开始编写普通的ZIP32文件格式。如果需要,即文件大小超过4GB或写入的条目超过65535条,它会自动添加ZIP64扩展名。这意味着该类可能会生成旧的ZIP实现无法读取的ZIP存档文件。
如果系统属性为de.schlichtherle。特鲁齐普。伊奥。拉链Zip64ext设置为true(忽略大小写),那么在编写ZIP存档文件时,无论其大小,都会添加ZIP64扩展名。此系统属性主要用于单元测试目的。在正常操作过程中,不应设置它,因为许多第三方工具无法正确处理冗余的ZIP64扩展。请注意,不可能禁止ZIP64扩展。
这个类为多线程提供了一些有限的支持:您可以从多个线程中读取它的属性,但显然不能由不同的线程同时写入多个条目。

代码示例

代码示例来源:origin: digital-preservation/droid

@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); 
}

代码示例来源:origin: digital-preservation/droid

@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();
  }
}

代码示例来源:origin: uk.gov.nationalarchives/droid-results

/**
 * {@inheritDoc}
 */
@SuppressWarnings("unchecked")
@Override
protected void handleEnd(Collection results) throws IOException {
  out.close();
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

@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();
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

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));

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

@Override
protected ZipOutputStream newZipOutputStream(
    OutputStream out, Charset charset)
throws IOException {
  ZipOutputStream res = new ZipOutputStream(out, charset);
  res.setCryptoParameters(new WinZipAesCryptoParameters());
  return res;
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

@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();
  }
}

代码示例来源:origin: pl.edu.icm.cocos/cocos-services

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());

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

protected ZipOutputStream newZipOutputStream(
    OutputStream out,
    ZipFile appendee)
throws ZipException {
  return new ZipOutputStream(out, appendee);
}

代码示例来源:origin: uk.gov.nationalarchives/droid-results

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;
  }
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

@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();
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

@Override
protected ZipOutputStream newZipOutputStream(
    OutputStream out,
    ZipFile appendee)
throws ZipException {
  ZipOutputStream res = new ZipOutputStream(out, appendee);
  res.setCryptoParameters(new WinZipAesCryptoParameters());
  return res;
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

protected ZipOutputStream newZipOutputStream(OutputStream out)
throws IOException {
  return new ZipOutputStream(out);
}

代码示例来源:origin: digital-preservation/droid

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;
  }
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

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();
    }
  }
}

代码示例来源:origin: de.schlichtherle.truezip/truezip-driver-zip

@Override
protected ZipOutputStream newZipOutputStream(OutputStream out)
throws IOException {
  ZipOutputStream res = new ZipOutputStream(out);
  res.setCryptoParameters(new WinZipAesCryptoParameters());
  return res;
}

代码示例来源:origin: uk.gov.nationalarchives/droid-results

@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); 
}

代码示例来源:origin: uk.gov.nationalarchives/droid-results

@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();
  }
}

代码示例来源:origin: pl.edu.icm.cocos/cocos-services

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);
}

代码示例来源:origin: digital-preservation/droid

/**
 * @throws IOException
 * 
 */
public void close() throws IOException {
  out.close();
}

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com