标签:style class blog c code java
最近在对之前的代码进行优化,主要是把界面全部换成GUI形式的(就是市面上的这种),之前进行数据查询的时候没问题,但是换成GUI的时候,由于输入的的是Unicode编码,而处理的时候又强制转换成ANSI编码,经过一番查阅(刚开始还以为强制转换是万能的....),才发现。。。看来之前还是低估了它~~~
以下是相关的介绍
常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串
TcharToChar (const TCHAR * tchar, char * _char) { int iLength ; //获取字节长度 iLength = WideCharToMultiByte(CP_ACP, 0, tchar, -1, NULL, 0, NULL, NULL); //将tchar值赋给_char WideCharToMultiByte(CP_ACP, 0, tchar, -1, _char, iLength, NULL, NULL); }
2.ANSI转Unicode
CharToTchar (const char * _char, TCHAR * tchar) { int iLength ; iLength = MultiByteToWideChar (CP_ACP, 0, _char, strlen (_char) + 1, NULL, 0) ; MultiByteToWideChar (CP_ACP, 0, _char, strlen (_char) + 1, tchar, iLength) ; }
【ANSI编码和Unicode编码】,布布扣,bubuko.com
标签:style class blog c code java
原文地址:http://www.cnblogs.com/Susake/p/3737996.html