HarmonyOS 鸿蒙Next Array和Uint8Array转换
HarmonyOS 鸿蒙Next Array和Uint8Array转换
账密登录等方式,有记录历史账密记录的需求,目前看到关进资产存储只支持单条字符串格式存储,无法支持有序数组存储
界面上数据操作采用Array处理,存储到关键字长存储(Asset)只接受Uint8Array格式, 在ets文件,如何实现Array与Uint8Array互相转换。类似 iOS上是可以直接对Array进行JSONEncoder和decoder,鸿蒙这里没有找到类似实现。
界面上数据操作采用Array处理,存储到关键字长存储(Asset)只接受Uint8Array格式, 在ets文件,如何实现Array与Uint8Array互相转换。类似 iOS上是可以直接对Array进行JSONEncoder和decoder,鸿蒙这里没有找到类似实现。
2 回复
可以参考下:
Array转换为Uint8Array
可以使用Uint8Array构造函数,直接传入数组作为参数
let numberArray = [1, 2, 3];
let uint8Array = new Uint8Array(numberArray);
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
Uint8Array转换为Array
要将Uint8Array转换回普通的JavaScript数组,可以直接使用Array.from()方法或者展开运算符(...):
let uint8Array = new Uint8Array([1, 2, 3]);
let numberArray = Array.from(uint8Array); // 使用Array.from()
let numberArraySpread = [...uint8Array]; // 使用展开运算符
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
更多参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-arkts-91-V5
更多关于HarmonyOS 鸿蒙Next Array和Uint8Array转换的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html