nodejs将数据附加到readstream的末尾

我想读一个.txt文件,将数据追加到最后,最后发送给zipstream。 现在我正在做的是写一个新的文件,然后使用新的文件的zipstream,但我想在飞行,而不创build一个不必要的新文件。

我的问题是如何创build一个读取stream,修改它并发送到另一个读取stream(可能与中间的写入stream)。

这可能吗?

原来的想法是这个,但我迷失在中间的某个地方:

var zipstream = require('zipstream'); var Stream = require('stream'); var zipOut = fs.createWriteStream('file.zip'); var zip = zipstream.createZip({ level : 1 }); zip.pipe(zipOut); var rs = fs.createReadStream('file.txt'); var newRs = new Stream(); // << Here should be an in/out stream?? newRs.pipe = function(dest) { dest.write(rs.read()); dest.write("New text at the end"); }; zip.addEntry(newRs, {name : 'file.txt'}, function() { zip.finalize(); });