/
// Anis 转 Unicode 字符串函数
// 入口参数:char* (Ansi字符串指针)
// 返回数据:TCHAR* (Unicode字符串指针)
/
TCHAR* AnsiToUnicode(char* str)
{
if( !str )
return NULL;
int wcslen = ::MultiByteToWideChar(CP_ACP, NULL, str, strlen(str), NULL, 0);
TCHAR *wstr = new TCHAR[wcslen + 1];
::MultiByteToWideChar(CP_ACP, NULL, str, strlen(str), wstr, wcslen);
wstr[wcslen] = '\0';
return wstr;
}
/
// Unicode 转 Ansi 字符串函数
// 入口参数:TCHAR* (Unicode字符串指针)
// 返回数据:char* (Ansi字符串指针)
/
char* UnicodeToAnsi(TCHAR* wstr)
{
if( !wstr )
return NULL;
int strleng = ::WideCharToMultiByte(CP_ACP, NULL, wstr, wcslen(wstr), NULL, 0, NULL, FALSE);
char* str = new char[strlen + 1];
::WideCharToMultiByte(CP_ACP, NULL, wstr, wcslen(wstr), str, strleng, NULL, FALSE);
str[strlen] = '\0';
return str;
}