缓冲区-Node.js将十六进制数转换为byteArray

我想使用蓝牙连接发送原始缓冲区。 内容是一个十六进制数字。 目前,我将数字手动拆分为一个字节数组。 有什么功能可以帮助我将数字转换为字节数组?

//var data = 0x250001000192CD0000002F6D6E742F72;
var data = new Buffer([0x25,0x00,0x01,0x00,0x01,0x92,0xCD,0x00,0x00,0x00,0x2F,0x6D,0x6E,0x74,0x2F,0x72]);
serialPort.write(data);
GingerJim asked 2020-01-13T15:53:04Z
2个解决方案
90 votes

在新版本的节点(6+)中,不赞成使用new Buffer()接口。 采用:

Buffer.from("250001000192CD0000002F6D6E742F72", "hex")

代替。

Brad answered 2020-01-13T15:53:32Z
72 votes
new Buffer("250001000192CD0000002F6D6E742F72", "hex")
SLaks answered 2020-01-13T15:53:47Z
translate from https://stackoverflow.com:/questions/18880301/node-js-convert-hexadecimal-number-to-bytearray