如何克隆 NodeJS 流?

May*_*tel 3 javascript chunks node.js node-streams

我需要以某种方式readstream在nodeJS中克隆a。也就是说,如果我有一个,readStream我需要它的两个副本stream1、stream2。我可以在其中读取流stream1stream2单独读取。我怎样才能做到这一点,因为据我所知,即使我尝试将原始流传输readStreamstream1,您也无法轻松复制流,stream2我无法单独使用它们中的每一个

小智 5

我在 npmjs 包文档中找到了这个文档

const fs = require("fs");
const ReadableStreamClone = require("readable-stream-clone");

const readStream = fs.createReadStream('text.txt');

const readStream1 = new ReadableStreamClone(readStream);
const readStream2 = new ReadableStreamClone(readStream);

const writeStream1 = fs.createWriteStream('sample1.txt');
const writeStream2 = fs.createWriteStream('sample2.txt');

readStream1.pipe(writeStream1)
readStream2.pipe(writeStream2)
Run Code Online (Sandbox Code Playgroud)

尝试这些代码行可能会帮助你