Node.js Stream readable.read() Method
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
Please Login to comment...