Método Node.js Stream readable.pipe()

El método readable.pipe() en un flujo de lectura se usa para adjuntar un flujo de escritura al flujo de lectura para que, en consecuencia, cambie al modo de flujo y luego envíe todos los datos que tiene al Writable adjunto. 

Sintaxis:

readable.pipe( destination, options )

Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación:

  • destino: este parámetro contiene el destino de escritura de datos.
  • opciones: este parámetro contiene las opciones de tubería.

Valor de retorno: Devuelve el flujo. Destino grabable, lo que permite una string de conductos si se trata de un flujo dúplex o de transformación. Los siguientes ejemplos ilustran el uso del método readable.pipe() en Node.js: 

Ejemplo 1: 

javascript

// Node.js program to demonstrate the    
// readable.pipe() method
  
// Accessing fs module
var fs = require("fs");
 
// Create a readable stream
var readable = fs.createReadStream('input.txt');
 
// Create a writable stream
var writable = fs.createWriteStream('output.txt');
 
// Calling pipe method
readable.pipe(writable);
 
console.log("Program Ended");

Producción:

Program Ended

Entonces, después del método de tubería, el archivo llamado «output.text» debe contener los datos que estaban en el archivo «input.text». 

Ejemplo 2: 

javascript

// Node.js program to demonstrate    
// the chaining of streams using
// readable.pipe() method
  
// Accessing fs and zlib module
var fs = require("fs");
var zlib = require('zlib');
 
// Compress the file input.text to
// input.txt.gz using pipe() method
fs.createReadStream('input.text')
   .pipe(zlib.createGzip())
   .pipe(fs.createWriteStream('input.text.gz'));
   
console.log("File Compressed.");

Producción:

File Compressed.

Referencia: https://nodejs.org/api/stream.html#stream_readable_pipe_destination_options .

Publicación traducida automáticamente

Artículo escrito por nidhi1352singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *