HarmonyOS鸿蒙NEXT中蓝牙打印中文会出现乱码(socket.sppWrite)。具体代码如下
HarmonyOS鸿蒙NEXT中蓝牙打印中文会出现乱码(socket.sppWrite)。具体代码如下
// 向客户端写入数据 let printStr = “您好abc123”; socket.sppWrite(clientNumber, StringUtil.strToBuffer(printStr));
strToBuffer(str: string, encoding: buffer.BufferEncoding = ‘utf-8’): ArrayBuffer { let zArr = new Uint8Array() if (this.isStringNotEmpty(str)) { let encode = new util.TextEncoder(encoding) zArr = encode.encodeInto(str) } return zArr.buffer; }
可有大神遇到过?在线等!!!
更多关于HarmonyOS鸿蒙NEXT中蓝牙打印中文会出现乱码(socket.sppWrite)。具体代码如下的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
问题已解决,utf-8改为GBK正常打印
更多关于HarmonyOS鸿蒙NEXT中蓝牙打印中文会出现乱码(socket.sppWrite)。具体代码如下的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙NEXT中,蓝牙打印中文出现乱码可能是由于编码问题。确保在发送数据前,将中文字符串转换为正确的字节编码格式,如UTF-8。可以使用TextEncoder
或String.getBytes("UTF-8")
方法进行转换。
示例代码如下:
String text = "中文打印";
byte[] data = text.getBytes("UTF-8"); // 转换为UTF-8编码的字节数组
socket.sppWrite(data); // 发送数据
确保蓝牙设备也支持UTF-8编码,以避免乱码问题。