Open In App

Node.js Stream readable.read() Method

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

The readable.read() method is an inbuilt application programming interface of Stream module which is used to read the data out of the internal buffer. It returns data as a buffer object if no encoding is being specified or if the stream is working in object mode.

Syntax:

readable.read( size )

Parameters: This method accepts single parameter size which specifies the number of bytes to be read from the internal buffer.

Return Value: If this method is used then the data read after this method is displayed in the output and if no data exist in the buffer then null is returned.

Below examples illustrate the use of readable.read() method in Node.js:

Example 1:




// Node.js program to demonstrate the     
// readable.read() method  
   
// Include fs module
const fs = require("fs");
   
// Constructing readable stream
const readable = fs.createReadStream("input.txt");
   
// Instructions for reading data
readable.on('readable', () => {
  let chunk;
   
  // Using while loop and calling
  // read method
  while (null !== (chunk = readable.read())) {
   
    // Displaying the chunk
    console.log(`read: ${chunk}`);
  }
});
console.log("done");


Output:

done
read: hello

Here, in the above example the data read from the buffer is ‘hello’ so it is returned.

Example 2:




// Node.js program to demonstrate the     
// readable.read() method  
  
// Include fs module
const fs = require("fs");
  
// Constructing readable stream
const readable = fs.createReadStream("input.txt");
  
// Instructions for reading data
readable.on('readable', () => {
  let chunk;
  
  // Using while loop and calling
  // read method with parameter
  while (null !== (chunk = readable.read(1))) {
  
    // Displaying the chunk
    console.log(`read: ${chunk}`);
  }
});
console.log("done");


Output:

done
read: h
read: e
read: l
read: l
read: o

In the above example the size of the data is stated so only one byte is read in each step from the file “input.txt” which contains data ‘hello’.

Reference: https://nodejs.org/api/stream.html#stream_readable_read_size



Last Updated : 12 Oct, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads