0

我的问题的前提是我创建了一个永远不应该写入磁盘的ini文件,但是这个“文件”需要以某种方式压缩,另外这个文件需要写在一个文件夹中,而不是压缩文件中的平面,例如文件夹/file.ini。

我最初的想法是仅将此文件创建到 ByteArrayOutputStream 中,这将满足文件不写入磁盘的要求。

但是,在压缩文件时,我认为它需要存在于磁盘上,即使只是提供一个文件名。

有没有办法可以做到这一点?

4

1 回答 1

1

是的,您可以使用ZipOutputStream 之类的东西 -

ZipOutputStream zs = null;
try {
  zs = new ZipOutputStream(os); // Where os is your ByteArrayOutputStream 
  ZipEntry e = new ZipEntry(fileName); // fileName is your file (in the zip)
  zs.putNextEntry(e);
  zs.write(theContent); // theContent is the the file content.
} finally {
  if (zs != null) {
    zs.close();
  }
}
于 2014-04-03T14:17:00.377 回答