请教一下,ASCII编码的ArrayBuffer数组,如何转成utf-8的字符串?
发布于 5 年前 作者 weilong 10160 次浏览 来自 问答

大家好,我在做低功耗蓝牙的小程序开发,蓝牙连接成功后,调用notifyBLECharacteristicValueChange()方法监听特征值的变化。

我通过串口调试助手让蓝牙发送了一个字符串“abc123”,然后在onBLECharacteristicValueChange中监听,并获取到了一些数据,这些数据存在ArrayBuffer中。

我发的数据是“abc123”,但接收到的数据是以ASCII编码方式存在了数组中。

我想要将ArrayBuffer数组中的数据转换成正常的UTF-8类型的字符串(即“abc”),请问应该如何转换呢?谢谢

2 回复

百度搜一下js的ArrayBuffer与字符串的相互转换,应该能很快找到答案

已解决

function ab2str(buf) {
  return String.fromCharCode.apply(null, new Uint8Array(buf));
}
回到顶部