HarmonyOS ArkTS实现Uint8Array类型转Map有问题
代码如下:
const temp = 'eyJ0aW1lc3RhbXAiOiIxNzE5NTgzMjk4MDA3IiwiY2hhbGxlbmdlIjoicXpRaFBvbkdkR2FmVDc2d2dBTmFuUnc2UTE4WE0wengtZUdRNlNPb1Z3bmh2X1kiICwiZG93bmxvYWRDZXIiOiAidHJ1ZSIsInVzZXJWZXJpZmljYXRpb24iOiIyIiAsImRldmljZUlEIjoibWF0ZTMwdGVzdCIgLCJhdXRoVHlwZSI6ImF1dGgiICwiYWRkVXZpIjoibnVsbCIgLCJtb2RlbE51bWJlciI6Im51bGwiIH0'
this.serverData = await this.genClientExts(temp);
private async genClientExts( temp:string): Promise<string> {
let base64 = new util.Base64Helper();
// let exts: ArrayList<Extension> = new ArrayList<Extension>();
let data:Uint8Array = await base64.decode(temp);
let serverData = uint8ArrayToString(data); // serverData缺少右花括号
return serverData;
}
function uint8ArrayToString(array: Uint8Array) {
// 将UTF-8编码转换成Unicode编码
let out: string = "";
let index: number = 0;
let len: number = array.length;
while (index < len) {
let character = array[index++];
switch(character >> 4) {
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
out += String.fromCharCode(character);
break;
case 12:
case 13:
out += String.fromCharCode(((character & 0x1F) << 6) | (array[index++] & 0x3F));
break;
case 14:
out += String.fromCharCode(((character & 0x0F) << 12) | ((array[index++] & 0x3F) << 6) | ((array[index++] & 0x3F) << 0));
break;
default:
break;
}
}
return out;
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS ArkTs可以实现Uint8Array类型转Map吗?
155浏览 • 1回复 待解决
HarmonyOS string转Uint8Array
23浏览 • 2回复 待解决
ArrayBuffer怎么转Uint8Array?
601浏览 • 1回复 待解决
HarmonyOS Uint8Array转16进制
25浏览 • 2回复 待解决
HarmonyOS Uint8Array怎么正确转ArrayBuffer
1463浏览 • 1回复 待解决
如何将Uint8Array转ArrayBuffer?
529浏览 • 1回复 待解决
如何将Uint8Array转字符串?
607浏览 • 1回复 待解决
HarmonyOS Uint8Array格式转字符串的方法
858浏览 • 1回复 待解决
HarmonyOS ArkTs侧 Uint8Array类型的参数,Native层怎么解析?
898浏览 • 2回复 待解决
HarmonyOS 录音发送Uint8Array
67浏览 • 1回复 待解决
Uint8Array如何转成ArrayBuffer
1597浏览 • 1回复 待解决
HarmonyOS string怎么与Uint8Array互转?
438浏览 • 1回复 待解决
Uint8Array是@Sendable类吗?
275浏览 • 1回复 待解决
HarmonyOS Uint8Array转成string后出现乱码
24浏览 • 2回复 待解决
HarmonyOS collections.Uint8Array怎么转ArrayBuffer
20浏览 • 1回复 待解决
Uint8Array 如何直接转为String or Json
2727浏览 • 1回复 待解决
HarmonyOS 如何将Uint8Array转为ArrayBuffer
34浏览 • 1回复 待解决
如何实现字符串与uint8Array、Buffer的互转
1040浏览 • 1回复 待解决
Uint8Array 在native层去解析提示过期
621浏览 • 1回复 待解决
如何将字符串转为Uint8Array?
812浏览 • 1回复 待解决
Uint8Array和string之间的相互转换
3143浏览 • 1回复 待解决
HarmonyOS如何将16进制字符串转成Uint8Array
816浏览 • 1回复 待解决
HarmonyOS NAPI,如果从ArkTS侧传入Uint8Array,请问Native该怎么接收这个数组?
178浏览 • 1回复 待解决
HarmonyOS Uint8Array 于 string 相互转换,数据超过长度出现问题
854浏览 • 1回复 待解决
#鸿蒙学习大百科#如何对Uint8Array进行解码?
292浏览 • 1回复 待解决
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-util-V5#decodesync9
Type为BASIC_URL_SAFE可以用来解码不带“=”的字符串,默认是BASIC,解码带“=”的字符串。