【发布时间】:2017-07-26 05:16:51
【问题描述】:
我正在尝试将整数存储到 node.js 缓冲区中,然后通过 bleno 将其发送到客户端:
var num = 24;
var buf = new Buffer(1);
buf.writeUInt8('0x' + num, 0);
//send buf using bleno
然后我在客户端使用以下代码将其转换为字符串:
function bytesToString(buffer) {
return String.fromCharCode.apply(null, new Uint8Array(buffer));
}
问题是我没有取回原始值 (24)。相反,它返回的是 '#' 字符串。 我也尝试了这里的解决方案:Converting between strings and ArrayBuffers 但我要么得到中文字符,要么得到 unicode 字符。
这是我之前在 Node.js 端所做的事情,并且上面的 bytesToString 函数没有任何问题:
new Buffer(num.toString());
但是要求指定我应该发送整数或浮点数而不将其转换为字符串。这可能吗?任何想法我做错了什么?提前致谢。
【问题讨论】:
标签: javascript node.js