Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Node.js zlib.createDeflate() Method

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

The zlib.createDeflate() method is an inbuilt application programming interface of the Zlib module which is used to create a new Deflate object.

Syntax:

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

Output:

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

Output:

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


My Personal Notes arrow_drop_up
Last Updated : 12 Oct, 2021
Like Article
Save Article
Similar Reads
Related Tutorials