(NodeJS) 如何将 UInt16 String 作为 writeUInt16BE 直接放入 Buffer?

(NodeJS) How Can I put UInt16 String directly to Buffer as writeUInt16BE?

在 Node JS buffer 中这样,int 450 -> 转换为 01C2 如下图。

Buffer Input Example

我有一些已经用十六进制编码的字符串。

var = "C2323DAD8D2D";

如何将这个字符串直接放入 Buffer 中,就像这样?

[缓冲区 C2 32 3D AD 8D 2D]

我实现此目的的方法是使用 Array-like Object.

创建缓冲区

ArrayArray-like object 之间的区别可以在这里找到。

Buffer.from(object)

-> 类型错误:第一个参数必须是 string, Buffer, ArrayBuffer, Array, or array-like object.

如错误所述,可以使用这些类型创建缓冲区。

var buf = {};
buf.length = 3;
buf[1] = "AB";
buf[2] = "CD";
buf[3] = "EF";

var Buf = Buffer.from(buf)

有效!