【Node.js24.x】Object::DeflateRaw()メソッドの使い方
DeflateRawメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
DeflateRawメソッドは、Node.jsのzlibモジュール内で、データをDEFLATEアルゴリズムを用いて圧縮する処理を実行するメソッドです。特に、このメソッドは圧縮データにZlibヘッダやフッタを追加しない「Raw(生)」形式での圧縮に特化しています。これにより、互換性の問題でZlibヘッダが不要な場合や、カスタムなプロトコルでデータのやり取りを行う際に利用されます。通常、この機能は変換ストリームとして提供され、大きなデータを効率的に処理するために使用されます。入力されたデータは段階的に圧縮され、出力ストリームへと変換されていきます。このメソッドを介して、開発者はファイルサイズを削減したり、ネットワーク転送量を減らしたりすることが可能になりますが、解凍時には同じくヘッダのないDEFLATE形式を扱う機能が必要です。システムエンジニアを目指す方にとって、データの効率的な取り扱いは重要であり、DeflateRawメソッドはその基礎となる圧縮技術の一つとして理解しておくと良いでしょう。
構文(syntax)
1const zlib = require('node:zlib'); 2const compressor = new zlib.DeflateRaw();
引数(parameters)
opts
- opts: object: 圧縮オプションを指定するオブジェクト
- level: number: 圧縮レベルを指定します。値は 0 から 9 までで、9 が最も高い圧縮率です。
- memLevel: number: メモリ使用量を指定します。値は 1 から 9 までで、9 が最も多くのメモリを使用します。
- strategy: number: 圧縮戦略を指定します。
- zlib.constants.Z_DEFAULT_STRATEGY (0): デフォルト戦略
- zlib.constants.Z_FILTERED (1): フィルタリングされたデータ用
- zlib.constants.Z_HUFFMAN_ONLY (2): ハフマン符号化のみ
- zlib.constants.Z_RLE (3): 実行長エンコーディング用
- zlib.constants.Z_FIXED (4): 固定ハフマンテーブル用
- flush: number: フラッシュモードを指定します。
- zlib.constants.Z_NO_FLUSH (0): データをバッファリングします。
- zlib.constants.Z_PARTIAL_FLUSH (1): 部分的なフラッシュを行います。
- zlib.constants.Z_SYNC_FLUSH (2): 同期フラッシュを行います。
- zlib.constants.Z_FULL_FLUSH (3): 完全なフラッシュを行います。
- zlib.constants.Z_FINISH (4): 圧縮を終了します。
- finish: boolean: 圧縮の終了を指定します。true の場合、圧縮ストリームを終了します。
戻り値(return)
zlib.DeflateRaw
zlib モジュールにおける DeflateRaw メソッドは、生 (raw) の Deflate 圧縮ストリームを生成して返します。