我正在使用 node.js。
我有这个字符串 msg_str
内容如下"0102ab00aabb00"
.我想转换此字符串内容(表示二进制十六进制的 ASCII)并将其存储到 Buffer 中,以便 Buffer 的内容看起来像 <01 02 ab 00 aa bb 00 >
.
我写的一些初步代码没有按预期工作;
msg_str = "0102ab00aabb00";
buffer_binary = new Buffer(msg_str);
console.log(msg_str);
console.log(buffer_binary);
buffer_binary
的控制台输出是30 31 30 32 61 62 30 30 61 61 62 62 30 30
.正确的输出应该是 01 02 ab 00 aa bb 00
.
最佳答案
您需要告诉Buffer
构造函数您的字符串是十六进制的。幸运的是,这很容易:)
msg_str = "0102ab00aabb00";
buffer_binary = new Buffer(msg_str, "hex"); // specify hex
console.log(msg_str); // logs 0102ab00aabb00
console.log(buffer_binary); // logs <Buffer 01 02 ab 00 aa bb 00>
关于javascript - 将包含 ASCII 二进制十六进制的字符串转换为 Buffer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34803652/