私は現在、ネストされたzip内のファイルを探すための関数を構築しようとしています。私が処理できる一般的な問題であり、コードは正しく機能しています。私が抱えている問題は、圧縮形式に関連しています。
デフォルトのzipファイルは問題ではありません。zipinputstreamを開いて検索機能に送信し、各エントリがzipファイルであるかどうかを確認し、そうである場合は、inputstreamを別のzipinputstreamでラップして再帰します。非標準のzip圧縮を使用している場合に問題が発生します。
この関数をもっと堅牢にしたいと思います。zipエントリの圧縮形式を検出し、それを正しいデフレータでラップしてから、それをzipinputstreamでラップして、再帰できるようにします。問題は、圧縮設定をデコードする方法がわからないことです。また、他のzip圧縮形式の処理方法もわかりません。
この機能をより柔軟にする方法についてのアドバイスがあれば役立ちます。これを自分の個人図書館に統合するつもりなので、今後はいろいろな方向からこの機能を利用していきます。