ANSI转UNICODE之基础篇

一、在VC++6.0工程中,将ANSI转为UNICODE时,需要如下设置如下:

     (1)、预编译:_MBCS替换成_UNICODE,UNICODE
  EICKANDY


  (2)、设置Link->Category->output->Entry-point symbol: wWinMainCRTStartupEICKANDY


通过以上设置,就实现了ANSI转为UNICODE,接下来就是实现基本类型之间的转换。



二、常见类型的转换:


1、添加"_T()"

例子:CString =_T("EICKANDY");

                   AfxMessageBox(_T("Input Data Error(Check_INSSTA)!"),16,0);


2、CString 、 char* 、CHAR、LPCSTR、LPSTR、WCHAR、TCHAR之间互转

       (1)、头文件:#include <AFXCONV.H> 

       (2)、USES_CONVERSION;//必须放在使用T2A()函数的函数内部

      (3)、通过使用A2T、A2T、W2A、A2W 函数来实现,具体使用方法请查看A2W、W2A、A2T、T2A的使用方法

     

3、CString转LPSTR

        (1) 通过GetBuffer(strPath.GetLength()与ReleaseBuffer()实现  注意:中使用GetBuffer过程中在ReleaseBuffer之前不要有任何对strPath的操作,具体原因我不做解释,自己查看相关资料即可。

                  例子:dispinfo.item.pszText =  Text.GetBuffer(Text.GetLength());
                              Text.ReleaseBuffer();


以三种是ANSI转为UNICODE过程中最常见的数据类型转换的问题。




阅读更多
个人分类: C++
上一篇A2W、W2A、A2T、T2A的使用方法
下一篇MFC用CreateDirectory创建文件目录
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭