0

編集ボックスに中国語を入力できる UNICODE MFC ダイアログ アプリで Unicode 変換をテストしました。を使用して文字を読み込んだ後

DDX_Text(pDX、IDC_EDIT1、m_strUnicode) UpdateDate(TRUE)

の は、 「e0 65 2d 4e 1f 75 09 67」m_pszdataを示しています。m_strUnicode次に、次のコードを使用して char* に変換しました。

char *psText; psText = 新しい文字 [dwMinSize]; WideCharToMultiByte (CP_OEMCP、NULL、m_strUnicode、-1、psText、dwMinSize、NULL、FALSE);

psTextは "ce de d6 d0 c9 fa d3 d0" が含まれておりm_pszdata、m_strUnicode の とは似ていません。なぜそうなのか誰か説明してくれませんか?

4

1 に答える 1

0

ce de d6 d0 c9 fa d3 d0无中生有GBKにあります。本当に Unicode を操作しているのですか?


CP_OEMCP instructs the API to use the currently set default OEM codepage.

だから私の推測では、デフォルトのコードページとして GBK を使用している中国の PC を使用していると思います。

无中生有in UTF16LE ではe0 65 2d 4e 1f 75 09 67、基本的に UTF-16-LE 文字列を GBK に変換しています。

于 2012-06-05T11:37:32.567 に答える