16进制到ASCII字符串转换




关于16进制到ASCII字符串转换:

此在线16进制到ASCII字符串转换工具可帮助您将一个16进制数组转换为ASCII字符串.

支持的16进制数组分割符号包括 ("", " ", "0x", "0X", "\0x", "\0X", "\x", "\X", "\n", "\t").

十六进制(Hex):

十六进制数字系统包含16种字符, 包含(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)加上(a, b, e, d, e, f)6个字符.由于十六进制数字系统可以以可读的方式表示任何二进制字符串,因此它被广泛用于计算机科学领域. SHA256哈希字符串通常显示为十六进制样式字符串,HTML中使用的颜色系统也可以表示为十六进制数字,从#000000(纯黑色)到#FFFFFF(纯白色).

ASCII编码标准:

ASCII (American Standard Code for Information Interchange) 是最广泛使用的字符编码标准. 标准ASCII 有7 bits长度, 共128个不同的字符. 扩展ASCII 有8 bits长度, 256个不同的字符. 版权符号 © 就定义在扩展ASCII表之中.

comic hex to ascii

链接:

维基百科 (十六进制): https://en.wikipedia.org/wiki/Hexadecimal

维基百科 (ASCII): https://en.wikipedia.org/wiki/ASCII

用Python进行16进制到ASCII字符串转换:

import binascii


def hex_to_ascii(hex_str):
    hex_str = hex_str.replace(' ', '').replace('0x', '').replace('\t', '').replace('\n', '')
    ascii_str = binascii.unhexlify(hex_str.encode())
    return ascii_str


hex_input = '54 68 69 73 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 2e'
ascii_output = hex_to_ascii(hex_input)
print('ascii result is:{0}'.format(ascii_output))

-------------------
ascii result is:b'This is an example.'

用Java进行16进制到ASCII字符串转换:

public class NumberConvertManager {
    public static String hex_to_ascii(String hex_str) {
        hex_str = hex_str.replace(" ", "").replace("0x", "").replace("\\x", "");
        StringBuilder ascii_str = new StringBuilder();
        for (int i = 0; i < hex_str.length(); i += 2) {
            String str = hex_str.substring(i, i + 2);
            ascii_str.append((char) Integer.parseInt(str, 16));
        }
        return ascii_str.toString();
    }

    public static void main(String[] args) {
        String hex_input  = "54 68 69 73 20 69 73 20 61 6e 20 65 78 61 6d 70 6c 65 2e";
        String ascii_output  = hex_to_ascii(hex_input);
        System.out.println("ascii result is:" + ascii_output );
    }
}

-------------------
ascii result is:This is an example.