1

我正在按照文件规范使用 blob 和数组缓冲区在 javascript 中生成二进制文件。一切顺利,我有以下斑点:

var bb = new Blob([fileSig, version, numBlocks], {type: 'example/binary'});

变量fileSigversionnumBlocks是数组缓冲区,其中包含正确的数据。现在我已经到了一个for循环,它生成的数据也需要进入这个 blob。

我首先想到我会创建一个 ArrayBuffers 数组,随着for循环的继续,它会被填充,然后将其添加到 blob 中,例如:

var bb = new Blob([fileSig, version, numBlocks, arrayOfArrayBuffers], {type: 'example/binary'});

但是blob不接受它。然后我想我会运行一个循环并附arrayOfArrayBuffers加到bbBlob,但 Blob 不允许附加。

有没有办法以这种方式附加到 arrayBuffer 或 Blob?我需要同时使用Uint8Array, 和Uint16Arrays。

编辑:aDataView似乎是我需要使用的。我将记录偏移量,然后在该偏移量处设置新数据。我会尝试并发布我的发现。

4

0 回答 0