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

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

前言

ArrayBuffer

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

Uint8Array

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

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

工具函数:

dart 复制代码
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;
  }
  
}
相关推荐
赵财猫._.16 分钟前
React Native鸿蒙开发实战(十):鸿蒙NEXT深度适配与未来展望
react native·react.js·harmonyos
2401_8603195231 分钟前
在React Native鸿蒙跨平台开发采用分类网格布局,通过paramRow和paramLabel/paramValue的组合展示关键配置信息
react native·react.js·harmonyos
Archilect33 分钟前
多阶段动效如何摆脱回调地狱:一个基于 ArkUI 的 AnimationStepper 设计
harmonyos
hh.h.2 小时前
Flutter适配鸿蒙轻量设备的资源节流方案
flutter·华为·harmonyos
2301_796512522 小时前
使用如Redux、MobX或React Context等状态管理库来管理状态,React Native鸿蒙跨平台开发来实战
react native·react.js·harmonyos
萌虎不虎2 小时前
【鸿蒙实现实现低功耗蓝牙(BLE)连接】
华为·harmonyos
FrameNotWork3 小时前
HarmonyOS 教学实战(三):列表分页、下拉刷新与性能优化(让列表真正“丝滑”)
华为·性能优化·harmonyos
柠果4 小时前
HarmonyOS震动反馈开发——提升用户体验的触觉交互
harmonyos
柠果4 小时前
HarmonyOS数据持久化最佳实践——Preferences首选项存储详解
harmonyos
柠果4 小时前
HarmonyOS纯音测听实现——专业听力检测功能开发
harmonyos