CNode

socket发送数字的问题

问答
AautooFelix发布于11 年前最后回复11 年前3 回复4574 浏览0 收藏

比如说要发送一个数字 5004 (0x13 0x8C) 需要server收到的格式是 8C 13 00 00 (4个字节) 如果是c++或.net用结构体很容易搞定 到了 js 就有问题了 请大神帮忙看一下

查看回复

回复 (3)

A
autooFelix#1·11 年前

var num = 5004; var hexStr = num.toString(16); var flag = hexStr.length % 2; if (flag == 1) { hexStr = '0' + hexStr; } var buf = new Buffer(4); var index = 0; for (var i = hexStr.length - 2; i >= 0; i-=2) { buf[index++] = parseInt(hexStr.substr(i, 2), 16).toString(); } console.log(buf);

A
albin3#2·11 年前

在buffer的文档里面有,你看看是readInt32LE 还是 readInt32BE。。 https://nodejs.org/api/buffer.html#buffer_buf_readint32le_offset_noassert

参与回复
登录后即可参与回复。登录