之前我做过我的作业,所以我知道其他问题,比如pack / unpack functions for node.js
重点是,那些包,返回除二进制字符串之外的所有内容。我想做的是一个简单的:
ruby-1.9.2-p136 :001 > [1,"10.0.0.1","foo"].pack 'l! a4 Z*'
=> "\x01\x00\x00\x00\x00\x00\x00\x0010.0foo\x00"
答案 0 :(得分:2)
在node.js v0.5.0-pre Buffers中有各种“写”方法,包括显式签名和字节序。
因此,您的示例将从Ruby音译到node.js JavaScript,如:
var b = new Buffer(8/*long*/ + 4 + 4);
b.writeInt32(1/*value*/, 0/*offset*/, 'little'/*endian*/);
b.write('10.0', 8/*offset*/);
b.write('foo\0', 12/*offset*/);
b.toString();
// => '\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u000010.0foo\u0000'
[编辑]:直接在GitHub存储库中更新了Buffers documentation的链接。
答案 1 :(得分:-1)
使用JS,使用 myVar.toString(2),其中2是基数。这将在1&0和0中返回二进制值。