The zlib.createDeflate() method is an inbuilt application programming interface of the Zlib module which is used to create a new Deflate object.
Syntax:
javascript
Output:
javascript
Output:
zlib.createDeflate( options )Parameters: This method accepts single parameter options which is an optional parameter that holds the zlib options. Return Value: It returns a new Deflate object. Below examples illustrate the use of zlib.createDeflate() method in Node.js: Example 1:
// Node.js program to demonstrate the
// createDeflate() method
// Including zlib and fs module
const zlib = require("zlib");
const fs = require('fs');
// Creating readable Stream
const inp = fs.createReadStream('input.txt');
// Creating writable stream
const out = fs.createWriteStream('input.txt.gz');
// Calling createDeflate method
const def = zlib.createDeflate();
// Piping
inp.pipe(def).pipe(out);
console.log("Program Completed!");
Program Completed!Example 2:
// Node.js program to demonstrate the
// createDeflate() method
// Including zlib and fs module
const zlib = require("zlib");
const fs = require('fs');
// Creating readable Stream
const inp = fs.createReadStream('input.txt');
// Creating writable stream
const out = fs.createWriteStream('input.txt.gz');
// Calling createDeflate method
const def = zlib.createDeflate();
// Piping
inp.pipe(out).pipe(def);
console.log("Program Completed!");
Error [ERR_STREAM_CANNOT_PIPE]: Cannot pipe, not readable
at WriteStream.Writable.pipe (_stream_writable.js:243:24)
at /home/runner/CorruptFlawedSoftwaresuite/index.js:19:15
at Script.runInContext (vm.js:133:20)
at Object. (/run_dir/interp.js:156:20)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
Here, piping is not done in a proper order so, error is thrown.
Reference: https://nodejs.org/api/zlib.html#zlib_zlib_createdeflate_options