Wince的书上一般说,Wince是用Unicode来编码的。中文在unicode码中也能找到相应的位置。如果用evc4编程,下载到arm装在的wince系统上面去,界面确实是中文。
但是在文本文档中输出 L"宋"这样的字符,却是乱码;经查证,编码为8b5b,是unicode的小尾,乱码;
而在wince系统能显示宋这个字符的是CBCE,为GBK码;
中文的wince系统用的是国标码(GBK),而evc编程或者输出都是用unicode码我想问的问题是,如何才能在英文的wince下面用unicode显示中文呢?
或者在中文系统下显示unicode编码的中文呢?
但是在文本文档中输出 L"宋"这样的字符,却是乱码;经查证,编码为8b5b,是unicode的小尾,乱码;
而在wince系统能显示宋这个字符的是CBCE,为GBK码;
中文的wince系统用的是国标码(GBK),而evc编程或者输出都是用unicode码我想问的问题是,如何才能在英文的wince下面用unicode显示中文呢?
或者在中文系统下显示unicode编码的中文呢?
解决方案 »
- 从“memcpy后,程序关闭出错”帖子中学到的,不清楚的可以参考,大牛请您指点
- 菜鸟问题,求助高手,关于引用作为参数,设置缺省参数的问题
- 如何设置某一个工程的其它的#include目录
- RealSDK 开发遇到难题
- 各位大虾能将CListCtrl中report风格下的cell设为可编辑状态吗?
- 郁闷。。。。。。。。三十岁才娶老婆,还扣工资!
- 请大家给个自动下载更新activx控键方案
- 静态函数有什么用
- Microsoft TTS哪里有的下载?高分啊
- 请教:如何在ADOX中查到某列为ACCESS的自动编号
- 如何设置OpenFileName结构体的lpstrFilter(过滤)?
- 如何得到窗口大小
其他编程和PC机区别不大,只要把资源里的语言选定为中文就可以正确的显示.
我开发了很多应用程序未出现问题,兄弟你再仔细调试一下?PS:evc可以在PC上模拟wince系统,你可以调试好后下载到机器上,免得耽搁时间.
if(file.Open(L"test1.TXT",CFile::modeReadWrite))
{
//MessageBox(L"File Open Success");
}
else
{
file.Open(L"test1.TXT",CFile::modeCreate | CFile::modeReadWrite);
// MessageBox(L"not exist to create");
}TCHAR buffer[]=L"宋"; //4个字节
//buffer[0]=0xfffe;
//SP-A2文件写入
file.Write(buffer,sizeof(buffer));
//buffer[0]=0xfffe;
//SP-A2文件写入
file.Write(buffer,sizeof(buffer));像这样输出宋,用UltraEdit32来查看,为8b5b,乱码
如果改成TCHAR buffer[]=L"111"; //4个字节
buffer[0]=0xCBCE;(国标码)
//SP-A2文件写入
file.Write(buffer,sizeof(buffer));wince才显示中文,兄弟被此所困久已
改为
TCHAR buffer[] = _T("宋");你看看你的工程定义了UNICODE,_UNICODE
buffer[0]=0xfeff; //中文输出的关键,unicode编码文件的识别码file.Write(buffer,sizeof(buffer));这样就可以显示中文了。