要將 char* 字串轉為 WCHAR 字串的方法是:
char buffer[BUFFERLEN];
WCHAR wbuffer[BUFFERLEN*2];
... fill datas in buffer[]...
// convert
MultiByteToWideChar(CP_ACP, 0, buffer,strlen(buffer),wbuffer,sizeof(wbuffer));
// done!
- WCHAR,一個''字''需要用兩個character來代,所以bufferlen 要 X2。
- function 的第一個argument 是 CodePage,以往這種 char * string 都是 ANSI (ASCII) ,所以就用CP_ACP。
這個function 要注意 第4個argument ,決定要轉換的字數,所以要用 strlen( ),不要用sizeof( ),否則轉出來的 wbuffer 後面會有一堆亂碼。
沒有留言:
張貼留言