使用Node JS将Uint8Array转换为流
Converting Uint8Array into Stream with Node JS
将原生JavaScript Uint8Array
转换为可读或转换Stream
的最佳方法是什么?
我想出了如何把Uint8Array的缓冲区,不确定这是否有帮助:
var uint8array = new Uint8Array();
var buffer = new Buffer(uint8array);
标准的方法是用_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);
但是,您也可以使用事件流的readArray
方法:
var es = require('event-stream');
var data = [1, 2, 3, 4];
var myStream = es.readArray(data);
myStream.pipe(somewhere);
我使用Duplex
而不是Readable
(credit to Brian Mancini):
import { Duplex } from 'stream';
// Or non ES6 syntax:
// const Duplex = require('stream').Duplex
let stream = new Duplex();
stream.push(buffer);
stream.push(null);
stream.pipe(process.stdout);
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- 如何在Javascript中将JSon对象转换为数组
- 使用JS将数组转换为json对象
- 如何使用json将对象列表从java转换为javascript
- 偶尔结结巴巴地说“;堆叠的”;translate()上的转换(v4.0.0-alpha40)
- 为什么在单独的函数中应用时转换会闪烁/断断续续(D3)
- 在Javascript中转换对象数组
- 将数字转换为一定数量的硬币
- 将image src数据:转换为Uint8Array
- 如何将带偏移量的Uint8Array转换为Int32Array
- 在javascript中将字符串转换为Uint8Array
- Firefox操作系统模拟器中的Uint8Array/Uint16Array转换是否已中断
- 如何在javascript中将Uint8Array转换为float
- 如何将Uint8Array从AWS响应转换为.mp4
- 将Uint8Array转换为javascript中的字符串(带中文字符)
- 我如何将Uint8Array数据转换为JS对象
- 将32位整数的非类型数组转换为UInt8Array的最有效方法
- 使用Node JS将Uint8Array转换为流
- 如何将十六进制字符串转换为Uint8Array并返回JavaScript
- 使用JSPDF将网页转换为pdf:'Uint8Array'未定义