首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

CString,该怎么处理

2012-02-22 
CString如何用CString类处理中文汉字?还有就是汉字的ASCII码怎么提取啊?[解决办法]一个内码2个字节2个字节

CString
如何用CString类处理中文汉字?还有就是汉字的ASCII码怎么提取啊?

[解决办法]
一个内码2个字节
2个字节分别表示区码,位码
并且2个字节都 > 0xa0
这是以前写的一个字库显示的程序
可见我的博客http://blog.csdn.net/hoya5121/archive/2007/01/09/1477960.aspx
void print_hzk(char *hz,int x,int y,const char *path){
int c1,c2;
FILE *fp=NULL;
char buf[32];
unsigned long offset;
if(x <0||x> 303||y <0||y> 183) return ;
fp=fopen(path, "rb ");
if(fp==NULL){ close_graph(); printf( "Can 't find file hzk16 "); exit(0);}
c1=hz[0]-0xa0; //c1=(c1 < <8)> > 8;
c2=hz[1]-0xa0; //c2=(c2 < <8)> > 8;
offset=(94*(c1-1)+(c2-1))*32L;
fseek(fp,offset,0);
fread(buf,32,1,fp);
print_hz(buf,16,x,y);
fclose(fp);
}

汉字内码提取
char* hanzi = "汉 ";
hanzi[0]
hanzi[1]
参照这2句:
c1=hz[0]-0xa0; //c1=(c1 < <8)> > 8;
c2=hz[1]-0xa0; //c2=(c2 < <8)> > 8;

[解决办法]
CString 可以直接赋值汉字字符串
输出的时候,API函数内部根据字节的值(是否大于0xa)判断是汉字还是英文字符,如果是汉字则取其2个字节组成汉字
[解决办法]
CString str(_T( "这是一个测试 "));
[解决办法]
汉字内码提取
char* hanzi = "汉 ";
hanzi[0]
hanzi[1]
参照这2句:
c1=hz[0]-0xa0; //c1=(c1 < <8)> > 8;
c2=hz[1]-0xa0; //c2=(c2 < <8)> > 8;

这个就是啊,,,

热点排行