問題タブ [zipinputstream]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - ColdFusionで64ビットのzipファイルを解凍します
私はjava.util.zip.ZipFile
ColdFusionで大きなファイルを解凍するために使用していました。ただし、「無効なCENヘッダー(不正な署名)」というエラーが発生します。
これがzip64ビット形式に関連していて、それjava.util.zip.ZipInputStream
を処理するために使用できることを示す投稿を見つけました。ただし、このエラーを回避することはできません。「クラス[B型のスカラー変数をメンバーを持つ構造体として逆参照しようとしました。」これはこの行によって引き起こされます:
どんな助けでも大歓迎です!
これが私のコードです
ソース:
java - Is there any way to append a file to a zip with a different name in Java?
I am wondering if there is a way, instead of just adding a file to a zip, to rename a file when adding it. I know of the write method:
I have searched all over the internet and there is no information about it. Is there any class es, or methods Java has? The only reason I don't want to rename then add it is because I'm working on windows with an aux file. My whole code is:
android - ファイルを既存の .APK に挿入する
既存の .APK ファイルにいくつかのリソース ファイルを追加する必要があります。Java Se でファイルを使用ZipInputStream
しZipOutputStream
て挿入するプログラムを作成しましassets/myfiles
たが、完全に動作しますが、新しい .APK ファイルをタブレットにインストールしようとすると、インストールに失敗しました! 新しいファイルに追加する必要がある署名はありますか?またその方法は?
java - Javaは、Unicodeファイル名でzipファイルを解凍します
Unicode ファイル名の zip ファイルを解凍するには? これは私のコードです:
しかし、私はエラーを受け取りますUTFDataFormatException
::
私のクラスはZipManager
です。
この問題を解決するにはどうすればよいですか?
android - ZipInputStream の巻き戻し - Android
.zip で Zip アーカイブを読み込もうとしていZipInputStream
ます。次のように、すべてのエントリを問題なく循環します。
変数を使用して別の関数で同じ zip ファイルを読み取ろうとすると、zis
上記と同じ方法で行ze = zis.getNextEntry()
が返されますnull
。ストリームの終わりに到達したため、これは理解できます。
私の質問:
1. ストリームを「巻き戻す」にはどうすればよいですか?
2.一時ファイルを作成してZipInputStream
、zip ファイルを再度読み取る必要がある次の機能でそれを使用する代わりの方法はありますか?
java - 入力ストリームのリストを使用して ZIP ファイルを作成する方法は?
私の場合、Web アプリのリソース フォルダーから画像をダウンロードする必要があります。現在、次のコードを使用して、URL から画像をダウンロードしています。
しかし、すべての画像を一度に読み取り、このための zip ファイルを作成する単一の操作が必要です。シーケンス入力ストリームと zip 入力ストリームの使用についてはよく知らないので、これらで可能であれば教えてください。
java - Java は ZipInputStream エントリから InputStream を作成します
単一の InputStream から、ZIP 内の複数の XML ファイルを読み取るメソッドを作成したいと考えています。
このメソッドは ZipInputStream を開き、各 xml ファイルで対応する InputStream を取得し、それを XML パーサーに渡します。メソッドのスケルトンは次のとおりです。
問題の部分は「// READ THE STREAM」です。ByteArrayInputStream を作成し、それをパーサーにフィードするという実用的なソリューションがあります。しかし、それはバッファを使用し、大きなファイルの場合、OutOfMemoryError が発生します。誰かがまだ興味がある場合のコードは次のとおりです。
理想的な解決策は、パーサーに元の ZipInputStream を供給することです。エントリの内容を Scanner で印刷するだけで機能するため、機能するはずです。
しかし...私が現在使用しているパーサー(jdom2ですが、javax.xml.parsers.DocumentBuilderFactoryでも試しました)は、データの解析後にストリームを閉じます:/ . そのため、次のエントリを取得して続行することができません。
最後に質問は次のとおりです。
- ストリームを閉じない DOM パーサーを知っている人はいますか?
- ZipEntry から InputStream を取得する別の方法はありますか?
ありがとう。