字符的HEX字符串转换

Posted coding码场

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符的HEX字符串转换相关的知识,希望对你有一定的参考价值。

1 byte数字转成HEX格式很简单,用sprintf就行,%02x格式输出到指定buffer即可,从字符要转回来成1byte数字要稍微转化一下。


unsigned char hex2int(char c)

    if (c >= '0' && c <= '9')
        return (unsigned char )(c - 48);
    else if (c >= 'A' && c <= 'F')
        return (unsigned char )(c - 55);
    else if (c >= 'a' && c <= 'f')
        return (unsigned char )(c - 87);
    else
        return 0;
   

 
void hex2str(char *hex, char *str)

     int i = 0 ;
     for (int j = 0; j < strlen(hex) - 1 ;)
        unsigned char a = hex2int(hex[j++]);
        unsigned char b = hex2int(hex[j++]);
        str[i++] = (char)(a*16 + b);
   
    str[i] = '\\0';

以上是关于字符的HEX字符串转换的主要内容,如果未能解决你的问题,请参考以下文章

从字符串 ascii 转换为字符串 Hex

字符的HEX字符串转换

将十六进制字符串(hex)转换为二进制字符串

C# Byte[Hex] 数组到字符串 - 无转换

怎样在PHP中把16进制HEX数据转换为2进制数据呢?

HEX格式数据转换成十六进制字符串