1. 程式人生 > >Unicode Cstring轉char互轉

Unicode Cstring轉char互轉

			        //計算char *陣列大小,以位元組為單位,一個漢字佔兩個位元組
				int charLen = strlen(szMsg);
				//計算多位元組字元的大小,按字元計算。
				int len = MultiByteToWideChar(CP_ACP,0,szMsg,charLen,NULL,0);
				//為寬位元組字元陣列申請空間,陣列大小為按位元組計算的多位元組字元大小
				TCHAR *buf = new TCHAR[len + 1];
				//多位元組編碼轉換成寬位元組編碼
				MultiByteToWideChar(CP_ACP,0,szMsg,charLen,buf,len);
				buf[len] = '\0';  //新增字串結尾,注意不是len+1
				//將TCHAR陣列轉換為CString
				CString strMsg;
				strMsg.Append(buf);
				//刪除緩衝區
				delete []buf;