java.util.zip - ZipInputStream v.s. ZipFile

前端 未结 3 1535
情书的邮戳
情书的邮戳 2021-01-05 05:42

I have some general questions regarding the java.util.zip library. What we basically do is an import and an export of many small components. Previously these c

3条回答
  •  鱼传尺愫
    2021-01-05 06:46

    Q1: yes, order will be the same in which entries were added.

    Q2: note that due to structure of zip archive files, and compression, none of solutions is exactly streaming; they all do some level of buffering. And if you check out JDK sources, implementations share most code. There is no real random access to within content, although index does allow finding chunks that correspond to entries. So I think there should not be meaningful performance differences; especially as OS will do caching of disk blocks anyway. You may want to just test performance to verify this with a simple test case.

    Q3: I would not count on this; and most likely they aren't. If you really think concurrent access would help (mostly because decompression is CPU bound, so it might help), I'd try reading the whole file in memory, expose via ByteArrayInputStream, and construct multiple independent readers.

提交回复
热议问题