中文转换成十六进制

最近碰到了中文转换十六进制的问题,在网上查阅了一些资料,自己也亲自试验,现把结果给大家分享下。


中间的核心部分参考了网上的资料,但暂时找不到出处了,先行说明下。


void ConvertStringToHex(char* str, string &hex)
{
int strLength = strlen(str);
for(int i = 0; i < strLength; i ++)
{
char ch,cl;
ch=((str[i]&0xF0)>>4)+'0';
if(ch>'9')ch+=('A'-'9'-1);
cl=(str[i]&0x0f)+'0';
if(cl>'9') cl+=('A'-'9'-1);
hex += ch;
hex += cl;
}
}

你可能感兴趣的:(中文转换成十六进制)