Unicode MFC アプリケーションで CString を Const char* に変換する
問題:
どうすればよいですか特に CString に TCHAR 文字が含まれている場合、Unicode MFC アプリケーションで CString を const char* 表現に変換します?
解決策:
TCHAR CString を効果的に変換するにはASCII に変換するには、CT2A マクロを使用する必要があります。このマクロでは、ASCII 変換だけでなく、UTF8 またはその他の Windows コード ページへの変換も可能になります。その使用法を示すいくつかの例を次に示します。
<code class="cpp">// Convert using the local code page CString str(_T("Hello, world!")); CT2A ascii(str); TRACE(_T("ASCII: %S\n"), ascii.m_psz); // Convert to UTF8 CString str(_T("Some Unicode goodness")); CT2A ascii(str, CP_UTF8); TRACE(_T("UTF8: %S\n"), ascii.m_psz); // Convert to Thai code page CString str(_T("Some Thai text")); CT2A ascii(str, 874); TRACE(_T("Thai: %S\n"), ascii.m_psz);</code>
さらに、ASCII から Unicode (CA2T) に変換するためのマクロもあります。 VS2003 以降を使用している場合は、ATL/WTL アプリケーションでこれらのマクロを利用できます。詳細については、MSDN ドキュメントを参照してください。
以上がUnicode MFC アプリケーションで CString を const char* に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。