将原生 JavaScript Uint8Array
转换为可读或转换 Stream
的最佳方法是什么?
我想出了如何将 Uint8Array 变成缓冲区,不确定这是否有帮助:
var uint8array = new Uint8Array();
var buffer = new Buffer(uint8array);
最佳答案
standard way将是用 _read
方法定义一个可读流:
var Stream = require('stream');
var myStream = new Stream.Readable();
var i = 0;
var data = [1, 2, 3, 4];
myStream._read = function(size) {
var pushed = true;
while (pushed && i < data.length) {
pushed = this.push(data[i++]);
}
if (i === data.length) {
this.push(null);
}
};
myStream.pipe(somewhere);
但是,您也可以使用 event-stream的 readArray
方法:
var es = require('event-stream');
var data = [1, 2, 3, 4];
var myStream = es.readArray(data);
myStream.pipe(somewhere);
关于javascript - 使用 Node JS 将 Uint8Array 转换为 Stream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32192287/