2011年8月7日

Unicode in MFC CString

告別 MFC 大概有 10 年以上的時間,因為工作,得重新溫習這套平台。用慣了 C# 之後,回過來使用MFC,老覺得 "卡卡的",很不順手。
十年前,unicode 還不是很普及,在字串轉換上,常使用 (ch & 0x80) 來檢查是不是中文字;但是現在已經有很多函式可以支援,我利用下列簡單的程式碼,將字串的轉換記錄下來,免得下回忘了,又得重新詢一次。

 
int len = str.GetLength();
for (int i=0; i<len; i++)
{
	TCHAR ch = str[i];

	TCHAR buffer[255];
	_stprintf_s(buffer, 255, _T("Index:%d Char:%c"), i, ch);

	CString strf;
	strf.Format(_T("Index:%d Char:%c"), i, ch);
}
一些常用的字串函式,如 strcat, strcpy, strcmp,..等,都可以找到對應的 _tcscat, _tcscpy, _tcscmp, 透過 tchar.h 便可以不必擔心是不是在 unicode 的編譯環境下了。
[reference]
CString: http://www.flounder.com/cstring.htm

沒有留言:

Deploying Vue & .NET with Google OAuth on GCP Cloud Run

Deploying Vue & .NET with Google OAuth on GCP Cloud Run Deploying Vue & .NET with Google OAuth on GCP Cloud Run...