节点转换流:将字符串追加到结尾

时间:2017-01-11 14:56:55

标签: node.js stream

如何创建变换流,其中唯一的变化就是将字符串附加到传入可读流的 end

例如,让我们说 input.txt 包含abcdef

fs.createReadStream('input.txt', {encoding: 'utf8'})
    .pipe(appendTransform)
    .pipe(fs.createWriteStream('output.txt', {encoding: 'utf8'}));

我可以将哪些内容用于appendTransform,以便 output.txt 包含abcdefghi

1 个答案:

答案 0 :(得分:4)

创建转换流:

var Transform = require('stream').Transform;

var appendTransform = new Transform({
    transform(chunk, encoding, callback) {
        callback(null, chunk);
    },
    flush(callback) {
        this.push('ghi');
        callback();
    }
});