unicode与char之间转化
2009-11-18 10:04
295 查看
// char*类型转换为TCHAR*型
static TCHAR* A2U(char* str)
{
int nLen=(int)strlen(str)+1;//待转换字节长度
int nwLen=MultiByteToWideChar(CP_ACP,0,str,nLen,NULL,0); //获得转换后宽字节长度
TCHAR *tstr;
tstr=new TCHAR[nLen];
MultiByteToWideChar(CP_ACP,0,str,nLen,tstr,nwLen); //进行转换
return tstr;
}
// TCHAR*型转换为char*类型
static char* U2A(TCHAR* tstr)
{
char *str;
int nLen=(int)wcslen(tstr)+1; //待转换字节长度
str=new char[nLen];
WideCharToMultiByte(CP_ACP,0,tstr,nLen,str,2*nLen,NULL,NULL); //进行转换
return str;
}
static TCHAR* A2U(char* str)
{
int nLen=(int)strlen(str)+1;//待转换字节长度
int nwLen=MultiByteToWideChar(CP_ACP,0,str,nLen,NULL,0); //获得转换后宽字节长度
TCHAR *tstr;
tstr=new TCHAR[nLen];
MultiByteToWideChar(CP_ACP,0,str,nLen,tstr,nwLen); //进行转换
return tstr;
}
// TCHAR*型转换为char*类型
static char* U2A(TCHAR* tstr)
{
char *str;
int nLen=(int)wcslen(tstr)+1; //待转换字节长度
str=new char[nLen];
WideCharToMultiByte(CP_ACP,0,tstr,nLen,str,2*nLen,NULL,NULL); //进行转换
return str;
}
相关文章推荐
- CString char *之间的相互转化
- string,CString,char*之间的转化
- Byte,CString,Char数组之间的转化
- MFC中,Unicode与多字符集下CString与char或char*等的转化
- 关于char[]数组,char*指针,std::string*之间的转化
- 001_021 Python 在Unicode和普通如ANSI编码之间转化
- ring3 char 字符数组 传入ring0后 转化为UNICODE_STRING处理
- 【语言基础】c++ 基本数据类型与字节数组(string,char [] )之间的转化方法
- QString和char字符数组之间的转换(QTextCodec.toUnicode方法,特别注意\0的问题)
- MFC中Unicode与多字节编码中遇到的CString与char或char*的转化问题
- java中char和Unicode之间的关系
- string,CString,char*之间的转化
- MFC:Unicode和多字节字符集下 CString和char的转化(MFC中)
- C++字符串之间转化——Unicode字符集
- 关于ASCII、Unicode、Char、NChar之间的联系与区别
- UNICODE下CString 和 const char* 的相互转化
- MFC中Unicode与多字节编码中遇到的CString与char或char*的转化问题
- CString 与char* 之间相互转化的函数 UnicodeToAnsi AnsiToUnicode
- string,CString,char*之间的转化
- C char/wchar_t之间的互转 多字节(MultiByte)和宽字符(Unicode)互转