53
A
回答
114
function hex2a(hexx) {
var hex = hexx.toString();//force conversion
var str = '';
for (var i = 0; i < hex.length; i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
return str;
}
hex2a('32343630'); // returns '2460'
32
为了完整起见,反转功能:
function a2hex(str) {
var arr = [];
for (var i = 0, l = str.length; i < l; i ++) {
var hex = Number(str.charCodeAt(i)).toString(16);
arr.push(hex);
}
return arr.join('');
}
a2hex('2460'); //returns 32343630
10
你可以使用这个..
var asciiVal = "32343630".match(/.{1,2}/g).map(function(v){
return String.fromCharCode(parseInt(v, 16));
}).join('');
document.write(asciiVal);
7
另一种方式来做到这一点(如果你使用的Node.js):
var input = '32343630';
var output = new Buffer(input, 'hex');
log(input + " -> " + output); // Result: 32343630 -> 2460
0
我发现,如果你要处理的控制字符,如上述方案将无法正常工作02(STX)或03(ETX),10岁以下任何事情都会被解读为一个单一的数字和后甩开一切。我遇到了这个问题,试图通过串行通信解析。所以,我首先把接收到的十六进制字符串并把它放在一个缓冲区对象然后转换十六进制串入一个字符串数组,像这样
buf = Buffer.from(data, 'hex');
l = Buffer.byteLength(buf,'hex');
for (i=0; i<l; i++){
char = buf.toString('hex', i, i+1);
msgArray.push(char);
然后它。加入
message = msgArray.join('');
然后我创建了一个hexToAscii功能就像@Del一个Azabani的回答以上......
function hexToAscii(str){
hexString = str;
strOut = '';
for (x = 0; x < hexString.length; x += 2) {
strOut += String.fromCharCode(parseInt(hexString.substr(x, 2), 16));
}
return strOut;
}
然后叫上
message = hexToAscii(message);
这种做法也让我通过遍历数组 '消息' 的hexToAscii功能使用控制字符切片到传输的不同部分,这样我就可以只处理我想要的部分数据。 希望这可以帮助别人!
1
我在web3库中发现了一个有用的函数。
var hexString = "0x1231ac"
string strValue = web3.toAscii(hexString)
相关问题
- 1. verilog中ascii-hex转换
- 2. 你如何将C中的ASCII转换为Hex?
- 3. 如何将HEX转换为ASCII并仅从中获取数字?
- 4. 无法在Python 3.6.3中将HEX转换为ASCII
- 5. 在JavaScript中将字符转换为ASCII
- 6. 如何将double转换为hex?
- 7. 如何将Hex转换为RGB?
- 8. 在perl中将数字转换为HEX
- 9. HSQLDB:将NUMERIC转换为HEX
- 10. 使用填充将ASCII转换为HEX并返回?
- 11. 将HEX转换为ASCII码,来自GPS追踪器的数据
- 12. 如何在JavaScript中将字符串转换为ASCII格式?
- 13. 如何在Golang中将int从int转换为hex?
- 14. 如何将ASCII码转换为uint64?
- 15. 如何将unicode转换为ASCII?
- 16. 如何将ascii码转换为文本?
- 17. 在Arduino中将ASCII转换为int
- 18. 在LISP中将CHAR转换为ASCII码
- 19. 从ascii转换为hex并丢失时丢失左引号
- 20. 如何将NSString转换为Objective-C中的HEX字符串?
- 21. 如何将HEX转换为Objective-C j中的NSString?
- 22. Bash:将非ASCII字符转换为ASCII
- 23. javascript - 如何将unicode字符串转换为ascii
- 24. 如何使用javascript将西里尔字符转换为ASCII码
- 25. 如何将ASCII转换为十六进制的JavaScript?
- 26. 将ASCII MathML转换为LaTeX
- 27. 将char转换为ascii值
- 28. 将unicode URL转换为ASCII
- 29. 将ASCII转换为int
- 30. 将Varchar转换为Ascii
我敢肯定有一个jQuery插件为^^ – AndiDog 2010-09-19 12:35:41
jQuery是主要是为了DOM操作,并在较小程度上,重新实现的东西像'Array.prototype。{地图,foreach}的()'过时/受限浏览器。老实说,这看起来更像[Underscore.js's](http://underscorejs.org/)领域。 – 2016-09-07 16:30:18
@AndiDog对于我们这些使用节点 – 2017-10-23 21:53:11