如何使用 JavaScript 将二进制代码转换为文本?我已经让它将文本转换为二进制,但是有没有办法反过来呢?
这是我的代码:
function convertBinary() {
var output = document.getElementById("outputBinary");
var input = document.getElementById("inputBinary").value;
output.value = "";
for (i = 0; i < input.length; i++) {
var e = input[i].charCodeAt(0);
var s = "";
do {
var a = e % 2;
e = (e - a) / 2;
s = a + s;
} while (e != 0);
while (s.length < 8) {
s = "0" + s;
}
output.value += s;
}
}
<div class="container">
<span class="main">Binary Converter</span><br>
<textarea autofocus class="inputBinary" id="inputBinary" onKeyUp="convertBinary()"></textarea>
<textarea class="outputBinary" id="outputBinary" readonly></textarea>
<div class="about">Made by <strong>Omar</strong></div>
</div>
原文由 16.uk 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用
toString(2)
转换为二进制字符串。例如:或
parseInt(input,10)
如果您知道输入应该是十进制。否则“0x42”的输入将被解析为十六进制而不是十进制。编辑:只需重新阅读问题。要从二进制转换为文本,请使用 parseInt(input,2).toString(10)。
以上所有内容仅适用于数字。例如,
4
<->0100
。如果你想要4
<->十进制52(它的ASCII值),使用String.fromCharCode()
(见 这个答案)。编辑2:根据要求,一切都适合,试试这个:
如果您将
0100
放入inputBinary
,您应该得到4
在outputText
中测试)