Convertir códigos numéricos chinos 0-9 en ascii

Convertir códigos numéricos chinos 0-9 en ascii

El código digital de gb2312:

Inserte la descripción de la imagen aquí
0-> A3B0 1-> A3B1… 9 -> A3B9

Y ASCII:

Inserte la descripción de la imagen aquí

0-> 0x30 1-> 0x31… 9-> 0x39

Cómo convertir gb2312 en una demostración ascii con codificación digital 0-9 es la siguiente

char roadline[] = {
    
    0xa3, 0xb2, 0xa3, 0xb0, 0xa3, 0xb2};
char conv_data[32];
int  roadline_total_len = 6;
int i,t;
t = 0;
for(i = 0;i<roadline_total_len ;i+=2)
{
    
    
	   if(((roadline[i]&0xf0) == 0xa0) && ((roadline[i+1]&0xf0) == 0xb0))//确定是数字
	   {
    
    
			   conv_data[t] = ((roadline[i]&0x0f)<<4) | ((roadline[i+1])&0x0f);//取高低四位拼接
			   t++;
	   }
}
printf("%x %x %x\n",conv_data[0],conv_data[1],conv_data[2]);

//输出结果为 32 30 32

Supongo que te gusta

Origin blog.csdn.net/WANGYONGZIXUE/article/details/107948954
Recomendado
Clasificación