問題タブ [gzipoutputstream]
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 - Java gzip - GZIPOutputStream が閉じない/任意に圧縮する
このスレッドの助けを借りてdecompress()
、compress()
関数を書くことができました。私のプログラムは、gzip 形式でデータを受信し、それを膨張させ、場合によっては変更してから、再度圧縮して送信します。何時間もの頭痛の種とバグ追跡の後、私が使用している が時々 (!)GZIPOutputStream
正しく閉じないことがわかりました。フラッシュできますが、その後何も起こりません。ただし、それ以外の場合は、単に機能します >.>
compress()
これが私のメソッドのコードです。
デバッグ目的で、いくつかの System.Out を追加しました。コンソール出力は次のとおりです。
その後、何も起こりません。この問題の助けをいただければ幸いです。
java - Java - 大きな文字列を圧縮する
私のJavaアプリケーションでは、いくつかの計算から非常に長い文字列を取得します(非常に長い文字列から、約600000文字程度を意味します)。しかし、この文字列をクライアントに送信して処理する必要があるため、圧縮された文字列を最大 1000 文字にする必要があります。
GZIPOutputStream と Inflater および Deflater クラスを使用してみましたが、最良の場合、300000 文字の出力文字列が得られました。これは優れた圧縮ですが、私の場合は十分ではありません。
また、文字列をn回圧縮しようとしましたが、出力が前のものよりも大きかったため、1回だけ圧縮に成功しました。
それで、あなたは私に何を試すように提案しますか?
ありがとうございました。
java - Javaで.zipを.gzに圧縮する方法は?
通常のファイルを .zip に圧縮し、新しいファイルを作成せずに gzip ファイルとして圧縮したい。
たとえば、pdf ドキュメントdoc.pdfがあるとします。取得する必要があるのは次のとおりです。doc.pdf.zip.gz
doc.pdf.zip
という名前の新しいファイルを作成してから開き、gzip したくありません。
サーバーを使用してブラウザからファイルを取得し、それを返します。これが私の機能です。
ファイルを取得しましたdoc.pdf.zip.gz
が、破損したファイルがdoc.pdf
あり、圧縮されていません。なぜですか??
android - GZIPOutputStream の使用中に画像がサーバーにアップロードされない
サーバーを使用せずに画像をアップロードできGZIPOutputStream
ます。しかし、私は使用する必要がありますGZIPOutputStream
。だから私は使用しました:
ここで私は見ることができます
ファイルは圧縮されていますが、画像がサーバーにアップロードされていないことを意味します。
このステートメントが成功しないことを意味することを理解できません。また、エラー、警告などは何も表示されません。
誰でもアイデアを思いつくことができますか?高度なヘルプをいただければ幸いです。
java - java.io.IOException: '' バイトの書き込み要求がヘッダーのサイズを超えています'' エントリのバイト''
tar.Gzip
を使用してファイルを作成していますGZIPOutputStream
が、ファイルの圧縮中に例外が発生した場合、コードが 3 回再試行されるという別のロジックを追加しました。
再試行ロジックをテストするためにスローIOException
すると、以下の例外がスローされます。
java.io.IOException: request to write '4096' bytes exceeds size in header of '2644' bytes for entry 'Alldbtypes'
行で例外が発生しています:org.apache.commons.io.IOUtils.copyLarge(inputStream, tarStream);