首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Node JS将Uint8Array转换为流

使用Node JS将Uint8Array转换为流
EN

Stack Overflow用户
提问于 2015-08-25 05:47:20
回答 2查看 5K关注 0票数 1

将原生JavaScript Uint8Array转换为可读或转换Stream的最佳方法是什么

我想出了如何将Uint8Array转换成缓冲区,不确定这是否有帮助:

代码语言:javascript
复制
var uint8array = new Uint8Array();
var buffer = new Buffer(uint8array);
EN

回答 2

Stack Overflow用户

发布于 2015-08-25 10:23:00

standard way将使用_read方法定义一个可读的流:

代码语言:javascript
复制
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-streamreadArray方法:

代码语言:javascript
复制
var es = require('event-stream');
var data = [1, 2, 3, 4];
var myStream = es.readArray(data);

myStream.pipe(somewhere);
票数 2
EN

Stack Overflow用户

发布于 2017-06-23 22:33:52

我使用的是Duplex而不是Readable (归功于Brian Mancini ):

代码语言:javascript
复制
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);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32192287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档