HarmonyOS 鸿蒙Next图像的 ArrayBuffer 数据如何转化成 Uint8Array

HarmonyOS 鸿蒙Next图像的 ArrayBuffer 数据如何转化成 Uint8Array 图像的 ArrayBuffer 数据 如何转化成 Uint8Array

2 回复

ArrayBuffer 转 Uint8Array 参考代码:

let arrayBuffer = new ArrayBuffer(5)
buffer.from(arrayBuffer).fill(1)
console.log("testBuffer =" + new Uint8Array(arrayBuffer))

[@ohos.buffer 参考文档](https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-buffer-V5)

更多关于HarmonyOS 鸿蒙Next图像的 ArrayBuffer 数据如何转化成 Uint8Array的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙Next)中,ArrayBuffer 是一个通用的、固定长度的原始二进制数据缓冲区,而 Uint8Array 是一个表示8位无符号整数的类型化数组。要将 ArrayBuffer 数据转换为 Uint8Array,可以直接使用 Uint8Array 构造函数。

具体代码如下:

let buffer = new ArrayBuffer(16); // 创建一个16字节的ArrayBuffer
let uint8Array = new Uint8Array(buffer); // 将ArrayBuffer转换为Uint8Array

在这个示例中,buffer 是一个16字节的 ArrayBuffer,通过 new Uint8Array(buffer),我们创建了一个新的 Uint8Array 对象,它直接引用 buffer 的底层数据。uint8Array 现在是一个包含16个元素的 Uint8Array,每个元素对应 buffer 中的一个字节。

这种转换不会复制数据,而是直接在原始 ArrayBuffer 上进行操作。因此,对 uint8Array 的修改会直接反映在 buffer 中,反之亦然。

总结:在鸿蒙Next中,通过 new Uint8Array(buffer) 可以将 ArrayBuffer 转换为 Uint8Array

回到顶部