1)string ==> CString
string s;
CString cs( s.c_str() );
cs = s.c_str();
2) CString ==> string
CString dir;
string stemp(dir.GetBuffer(dir.GetLength()));
stemp = dir.GetBuffer(dir.GetLength());
3) char* ==> CString
char* psz = "joise";
CString cstr( psz );
4) CString ==> char*
CString abc;
abc="abc";
char* pc;
pc=(LPCSTR)abc;
CString str;
char* a=(LPSTR)(LPCTSTR)str;
CString str;
#ifdef _UNICODE
::WideCharToMultiByte((LPCTSTR)str, ...)
#else
char *pString = (LPCTSTR)str
#endif
CString str;
char* ch;
ch=str.GetBuffer(str.GetLength());
str.ReleaseBuffer(str.GetLength());
5) wchar_t* ==> char*
char *WSTRToAnsi(wchar_t* Msg)//把wchar*转换称char*
{
int len = wcstombs(NULL, Msg, 0);
char* buf = new char[len+1];
wcstombs(buf, Msg, len);
buf[len] = 0;
return buf;
}
6) char ==> w_char
size_t mbstowcs( wchar_t *wcstr, const char *mbstr, size_t count );
7)TCHAR数组转到CString很简单:使用CString的Format就行。
TCHAR m_buf[100] = _T("Hello");
CString str;
str.Format(L"%s",m_buf);
8)现在就来CString转为TCHAR数组
CString str = L"sssssss";
TCHAR m_buf[20];
_tcscpy(m_buf, str);