ANSI转UNICODE之基础篇
2015-07-09 09:42
891 查看
一、在VC++6.0工程中,将ANSI转为UNICODE时,需要如下设置如下:
(1)、预编译:_MBCS替换成_UNICODE,UNICODE
(2)、设置Link->Category->output->Entry-point symbol: wWinMainCRTStartup
通过以上设置,就实现了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过程中最常见的数据类型转换的问题。
(1)、预编译:_MBCS替换成_UNICODE,UNICODE
(2)、设置Link->Category->output->Entry-point symbol: wWinMainCRTStartup
通过以上设置,就实现了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过程中最常见的数据类型转换的问题。
相关文章推荐
- 《Yaf零基础学习总结》系列技术文章整理收藏
- 求一个整数四舍五入后的结果,该整数可以是正数负数
- test
- python实现用户登陆邮件通知的方法
- 欢迎使用CSDN-markdown编辑器
- 提高团队战斗力的几点建议
- mongodb入门
- python 显示unicode字符问题
- BZOJ 1026 Windy数
- select2美化下拉单
- Lua脚本语言基本语法快速入门教程
- CentOS 6 Iptables关于--hitcount数值限制的问题
- linux运维
- 循环体中用“+”拼接字符串-代码典型缺陷分析
- cout的输出格式初探2
- 数字的颠倒
- 【eclipse】用Eclipse编程时,查看源代码,显示Source not found问题的解决方法。
- Spring定时任务的几种实现
- Eclipse 编辑注释模板
- Spring定时任务的几种实现