写点什么

【HarmonyOS NEXT】鸿蒙 arrayBuffer 和 Uint8Array 互相转化

作者:GeorgeGcs
  • 2025-03-26
    上海
  • 本文字数:564 字

    阅读完需:约 2 分钟

【HarmonyOS NEXT】鸿蒙arrayBuffer和Uint8Array互相转化

【HarmonyOS NEXT】鸿蒙 arrayBuffer 和 Uint8Array 互相转化

前言

ArrayBufferArrayBuffer 内部包含一块 Native 内存,该 ArrayBuffer 的 JS 对象壳被分配在虚拟机本地堆(LocalHeap)。与普通对象一样,需要经过序列化与反序列化拷贝传递,但是 Native 内存有两种传输方式:拷贝和转移。



Uint8ArrayUint8Array 是一种基本的 JavaScript 数组类型,用于处理二进制数据。它是无符号的 8 位整数数组,每个元素固定为 1 字节(8 位)。这种数组类型主要用于操作二进制数据,如文件、图像数据或网络通信中的原始数据。


在鸿蒙(HarmonyOS)开发中,Uint8Array 经常被用来处理二进制数据,例如在证书管理模块中,它被用来表示签名结果或证书二进制数据。由于 Uint8Array 能够有效地处理二进制数据,它在处理网络通信或文件操作时非常有用,可以提高性能并减少内存使用。

工具函数:

export class Util {
/** * arrayBuffer转Uint8Array * @param buffer * @returns */ public arrayBufferToUint8Array(buffer: ArrayBuffer): Uint8Array { let temp = new Uint8Array(buffer); return temp; }
/** * uint8Array转ArrayBuffer * @param buffer * @returns */ public uint8ArrayToArrayBuffer(array: Uint8Array): ArrayBuffer { let temp = array.buffer as ArrayBuffer; return temp; } }
复制代码


发布于: 1 小时前阅读数: 11
用户头像

GeorgeGcs

关注

路漫漫其修远兮,吾将上下而求索。 2024-12-24 加入

历经腾讯,宝马,研究所,金融。 待过私企,外企,央企。 深耕大应用开发领域十年。 OpenHarmony,HarmonyOS,Flutter,H5,Android,IOS。 目前任职鸿蒙应用架构师。 HarmonyOS官方认证创作先锋

评论

发布
暂无评论
【HarmonyOS NEXT】鸿蒙arrayBuffer和Uint8Array互相转化_HarmonyOS NEXT_GeorgeGcs_InfoQ写作社区