Hex与ASCII相互转换函数
来源:互联网 发布:淘宝不能开店了 编辑:程序博客网 时间:2024/05/01 19:54
char HexToASCII(unsigned char data_hex)
{
char ASCII_Data;
ASCII_Data=data_hex & 0x0F;
if(ASCII_Data<10)
ASCII_Data=ASCII_Data+0x30; //‘0--9’
else
ASCII_Data=ASCII_Data+0x37; //‘A--F’
return ASCII_Data;
}
void HexGroupToString(char *OutStrBuffer, unsigned char *InHexBuffer, unsigned int HexLength)
{
unsigned int i, k=0;
for(i=0;i<HexLength;i++)
{
OutStrBuffer[k++]=HexToASCII((InHexBuffer[i]>>4)&0x0F);
OutStrBuffer[k++]=HexToASCII(InHexBuffer[i]&0x0F);
}
OutStrBuffer[k]='\0';
}
BOOL StringToHexGroup(unsigned char *OutHexBuffer, char *InStrBuffer, unsigned int strLength)
{
unsigned int i, k=0;
unsigned char HByte,LByte;
if(strLength%2 !=0)
return FALSE;
for(i=0; i<strLength; i=i+2)
{
if(InStrBuffer[i]>='0' && InStrBuffer[i]<='9')
{
HByte=InStrBuffer[i]-'0';
}
else if(InStrBuffer[i]>='A' && InStrBuffer[i]<='F')
{
HByte=InStrBuffer[i]-'A' +10;
}
else
{
HByte=InStrBuffer[i];
return FALSE;
}
HByte=HByte <<4;
HByte = HByte & 0xF0;
if(InStrBuffer[i+1]>='0' && InStrBuffer[i+1]<='9')
{
LByte=InStrBuffer[i+1]-'0';
}
else if(InStrBuffer[i+1]>='A' && InStrBuffer[i+1]<='F')
{
LByte=InStrBuffer[i+1]-'A' +10;
}
else
{
LByte=InStrBuffer[i];
return FALSE;
}
OutHexBuffer[k++]=HByte |LByte;
}
return TRUE;
}
- Hex与ASCII相互转换函数
- Hex与ASCII相互转换函数
- Hex和ASCII相互转换函数
- HEX与ASCII转换
- 字符串UTF-8与ASCII相互转换
- Java中字符串与ASCII相互转换
- ASCII码与字符相互转换
- ascii码与字符的相互转换
- 中文与ascii码相互转换
- ASCII与中文的相互转换
- [Java]字符串 与 ASCII码 相互转换
- Java中字符串与ASCII相互转换
- Java中字符串与ASCII相互转换
- C# ASCII与字符串间相互转换
- Swift字符与ASCII数值相互转换
- ASCII值与字符相互转换程序
- Hex与浮点数相互转换,支持LINUX平台
- 【C#】Hex字符串与整数的相互转换
- UIViewController使用技巧!
- PHP上传文件大小限制
- Struts2---->中文乱码
- 腾讯面试题集锦
- 百度K站之前兆与解决方案的另类分析
- Hex与ASCII相互转换函数
- C++动态数组
- svn建库,启动命令
- 用ntp 网络同步 CentOS 系统时间
- Linux下scp命令的使用
- java反射详解
- Android NDK 开发教程二
- S5PV210 Android fimc驱动分析 - fimc_regs.c
- Samba的配置与使用