567
社区成员




VOID HexStr2Unicode(const std::string HexStr, wchar_t UnicodeStr[1024])
{
int i, j;
int iStrLen;
int iTemp;
CHAR *p = NULL;
CHAR HexChar[1024];
ZeroMemory(HexChar, sizeof(HexChar));
strcpy(HexChar, HexStr.c_str());
ZeroMemory(UnicodeStr, 1024 * sizeof(wchar_t));
CHAR TempChar[32];
ZeroMemory(TempChar, sizeof(TempChar));
iStrLen = strlen(HexChar);
for (i = 0, j = 0; i < iStrLen; i+=2,j++)
{
memcpy(TempChar, HexChar + i, 2);
sscanf(TempChar, "%x", &iTemp);
p = (CHAR*)UnicodeStr;
if (j % 2 == 0)
{
p[j+1] = iTemp;
}
else if (j % 2 == 1)
{
p[j-1] = iTemp;
}
}
}