Как преобразовать буфер node.js в Readable stream после использования интерфейса stream2?
Я уже нашел этот ответ и модуль stream-buffers, но этот модуль основан на интерфейсе stream1.
Ответ 1
С streamifier вы можете преобразовать строки и буферы в читаемые потоки с новым потоком api.
Ответ 2
Самый простой способ - создать новый экземпляр потока PassThrough и просто вставить в него свои данные. Когда вы подключаете его к другим потокам, данные будут выведены из первого потока.
var stream = require('stream');
// Initiate the source
var bufferStream = new stream.PassThrough();
// Write your buffer
bufferStream.end(new Buffer('Test data.'));
// Pipe it to something else (i.e. stdout)
bufferStream.pipe(process.stdout)
Ответ 3
Как предложил natevw, еще более идиоматично использовать stream.PassThrough и end его с буфером:
var buffer = new Buffer( 'foo' );
var bufferStream = new stream.PassThrough();
bufferStream.end( buffer );
bufferStream.pipe( process.stdout );
Это также то, как буферы преобразуются/пишутся в винил-fs.