可讀流中的可讀.pipe()方法用於將可寫流附加到可讀流,從而使其切換到流模式,然後將其具有的所有數據推送到附加的可寫。
用法:
readable.pipe( destination, options )
參數:該方法接受上述和以下所述的兩個參數:
- destination:此參數保存寫入數據的目的地。
- options:此參數保存管道選項。
返回值:它返回stream.Writable目標,如果是Duplex或Transform流,則允許使用管道鏈。
下麵的示例說明在Node.js中使用visible.reapipe()方法:
範例1:
// 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");
輸出:
Program Ended
因此,在使用管道方法之後,名為“output.text”的文件必須包含文件“input.text”中的數據。
範例2:
// 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.");
輸出:
File Compressed.
參考: https://nodejs.org/api/stream.html#stream_readable_pipe_destination_options。
相關用法
- node.js Stream writable.end()用法及代碼示例
- node.js Stream readable.destroy()用法及代碼示例
- node.js Stream readable.read()用法及代碼示例
- node.js Stream writable.destroy()用法及代碼示例
- node.js Stream readable.pause()用法及代碼示例
- node.js Stream writable.setDefaultEncoding()用法及代碼示例
- node.js Stream readable.isPaused()用法及代碼示例
- node.js Stream writable.uncork()用法及代碼示例
- node.js Stream writable.write()用法及代碼示例
- node.js Stream writable.cork()用法及代碼示例
- node.js Stream readable.unpipe()用法及代碼示例
注:本文由純淨天空篩選整理自nidhi1352singh大神的英文原創作品 Node.js | Stream readable.pipe() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。