关于VS2005 unicode字符集环境
来源:互联网 发布:java float 大小 编辑:程序博客网 时间:2024/06/05 16:09
习惯了ascii字符集上的操作,突然之间给我了unicode,突然有点接受不了。
最近,用VS2005开发wince上层应用,就不得不面对这个问题了。比如CString是TCHAR类型,而unicode上#define TCHAR wchat_t 以宽字节来定义CString对象,这就是为什么加个_T()的因由了。
你要是取个txt文件显示在编辑框上吧,一般txt文件是以ascii字符存储,那么要嘛你可以另存为unicode存储,要嘛你就需要在程序上处理一下了(要是直接提取显示的话就会乱码了),这就需要MultiByteToWideChar()这个函数来转换一下了:
int dwnum = MultiByteToWideChar(CP_ACP,0,chbuf,-1,NULL,0);//,ch,-1,NULL,0); //多字节转宽字节
CString buf;
MultiByteToWideChar(CP_ACP,0,chbuf,-1,buf.GetBuffer(),dwnum);
其中呢,chbuf存的呢就是我们读到的txt数据,通过以上方式转换为宽字节存在了CString buf这里面了,这样出来显示在编辑框上的值就不会乱码。(原因很清楚了)
那要是把编辑框里面的数据写到txt文本里面呢,同理:
DWORD dwNum = WideCharToMultiByte(CP_ACP,WC_COMPOSITECHECK,s,-1,ch,sizeof(ch),NULL,NULL);
file.Write(ch,dwNum);
WideCharToMultiByte()这个函数的作用就不言而喻了。
当然,还有其他的方法可以实现转换。
- 关于VS2005 unicode字符集环境
- VS2005使用 Unicode 字符集!
- 关于Unicode字符集编程
- 关于UNICODE字符集
- 关于Unicode字符集
- 关于Unicode字符集
- 关于Unicode字符集
- 关于Unicode字符集
- 9.关于Unicode字符集
- VS2005设置Unicode或ASCII字符集问题
- VS2005设置UNICODE或ASCII字符集问题
- VS2005设置Unicode或ASCII字符集问题
- VS2005默认使用Unicode字符集的问题
- VS2005默认使用Unicode字符集的问题
- VS2005 宽字符 unicode字符集和多字节字符集
- 学习笔记-关于字符集Unicode
- 关于Unicode,字符集,字符编码
- VS2005设置UNICODE或ASCII字符集问题[转]
- UltraVNC——build
- Latex插图笔记
- 算法笔记之 拓扑排序 POJ 2585(Window Pains)
- Android实现网络多线程断点续传下载
- Latex中的插图心得
- 关于VS2005 unicode字符集环境
- 关于内部类的解释
- 抽出1个小时制作一款简单的物理小游戏(绳子原理)
- C#重绘TabControl的Tabpage标签,添加图片及关闭按钮
- 我的 MCMF 模板
- 运用项目管理的九大知识领域管理好自己的一生
- 一个跳出第三方代码的方法
- vi 操作 总结
- 子序列的最大乘积问题