在node.js中将二进制转换为hex
我想问我想将我的二进制数据转换为hex之前,我将这个插入到我的表。
var net = require('net');
var server = net.createServer(function(socket){ socket.on('data',function(data){ var bindata= data.toString('binary'); //filter(bindata); //if no error convert to hex. var hexdata = bindata.toString('hex'); //insert hexdata here. }); server.listen(3030,'127.0.0.1', function () { console.log("server is listenining"); });
但问题是二进制数据将被插入。
先谢谢你。
parseInt("10101001", 2).toString(16) // => "a9"
编辑:我想我误解了这个问题。 你的data
是以Buffer
,然后将它转换成一个string,那么你需要它作为hex? 如果是这样,只要做data.toString('hex')
。 如果您已经操作了bindata
,然后重build到一个缓冲区:
var bindata = data.toString('binary'); // do something with bindata var hexdata = new Buffer(bindata, 'ascii').toString('hex');
尝试这个 :
parseInt(“1111”,2).toString(16);
parseInt中的第二个参数是基数,它表示“111”值为二进制,toString(16)将其转换为hex。