問題タブ [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.

0 投票する
1 に答える
623 参照

java - Java gzip - GZIPOutputStream が閉じない/任意に圧縮する

このスレッドの助けを借りてdecompress()compress()関数を書くことができました。私のプログラムは、gzip 形式でデータを受信し、それを膨張させ、場合によっては変更してから、再度圧縮して送信します。何時間もの頭痛の種とバグ追跡の後、私が使用している が時々 (!)GZIPOutputStream正しく閉じないことがわかりました。フラッシュできますが、その後何も起こりません。ただし、それ以外の場合は、単に機能します >.>

compress()これが私のメソッドのコードです。

デバッグ目的で、いくつかの System.Out を追加しました。コンソール出力は次のとおりです。

その後、何も起こりません。この問題の助けをいただければ幸いです。

0 投票する
1 に答える
867 参照

java - Java - 大きな文字列を圧縮する

私のJavaアプリケーションでは、いくつかの計算から非常に長い文字列を取得します(非常に長い文字列から、約600000文字程度を意味します)。しかし、この文字列をクライアントに送信して処理する必要があるため、圧縮された文字列を最大 1000 文字にする必要があります。

GZIPOutputStream と Inflater および Deflater クラスを使用してみましたが、最良の場合、300000 文字の出力文字列が得られました。これは優れた圧縮ですが、私の場合は十分ではありません。

また、文字列をn回圧縮しようとしましたが、出力が前のものよりも大きかったため、1回だけ圧縮に成功しました。

それで、あなたは私に何を試すように提案しますか?

ありがとうございました。

0 投票する
1 に答える
1413 参照

java - Javaで.zipを.gzに圧縮する方法は?

通常のファイルを .zip に圧縮し、新しいファイルを作成せずに gzip ファイルとして圧縮したい。

たとえば、pdf ドキュメントdoc.pdfがあるとします。取得する必要があるのは次のとおりです。doc.pdf.zip.gz

doc.pdf.zipという名前の新しいファイルを作成してから開き、gzip したくありません。

サーバーを使用してブラウザからファイルを取得し、それを返します。これが私の機能です。

ファイルを取得しましたdoc.pdf.zip.gzが、破損したファイルがdoc.pdfあり、圧縮されていません。なぜですか??

0 投票する
2 に答える
51 参照

android - GZIPOutputStream の使用中に画像がサーバーにアップロードされない

サーバーを使用せずに画像をアップロードできGZIPOutputStreamます。しかし、私は使用する必要がありますGZIPOutputStream。だから私は使用しました:

ここで私は見ることができます

ファイルは圧縮されていますが、画像がサーバーにアップロードされていないことを意味します。

このステートメントが成功しないことを意味することを理解できません。また、エラー、警告などは何も表示されません。

誰でもアイデアを思いつくことができますか?高度なヘルプをいただければ幸いです。

0 投票する
0 に答える
1051 参照

java - Javaのファイルシステムに行かずに文字列をgzipして解凍する方法は?

望ましい:
文字列またはバイト配列の圧縮および圧縮解除を作成します。その後、ログ ファイルに書き込むために Base64 でエンコードする予定です。

残念ながら、圧縮されていると認識していないようです。いくつかのメタデータ バイトが欠落していると思いますが、必要なものが見つかりませんでした。

出力: ここに画像の説明を入力

テスト クラス:

0 投票する
1 に答える
6423 参照

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);