4

Java7ではzipファイルシステムが導入されました。以下のリンクは、zipファイルからzipファイルシステムを作成する方法を示しています。

http://docs.oracle.com/javase/7/docs/technotes/guides/io/fsp/zipfilesystemprovider.html

ただし、InputStreamからzipファイルシステムを作成する方法の例は見つかりません。それは可能ですか?もしそうなら、どのように?

注:説明したように、InputStreamをディスクに書き込んでzipファイルシステムを作成できることはわかっています。私はそれをハックだと考えており、それを避けたいと思います。

4

2 に答える 2

4

いいえ、ファイルシステムはZIPファイルへのランダムアクセスを必要とするため、それは不可能です。

恥知らずなセルフプラグ:TrueZIPは操作が簡単で、より強力です。ただし、同じ制約が適用されます。

于 2012-08-05T19:32:04.887 に答える
2

部分的な答えにすぎませんが、カスタムファイルシステムプロバイダーが必要になると思います。メモリ内のファイルシステムに関するこの質問が役立つ場合があります。newFileSystemのドキュメントにはmemory://...URLスキームが示されていますが、詳細は示されていません。

別の回答で指摘されているように、ファイルシステムはデータへの双方向アクセスを必要とするため、データを完全にロードするのに十分なメモリを想定しています。

于 2012-08-05T19:18:59.690 に答える