关于CFile的一个奇怪的问题
我想使用windows的字库生成一点阵字库。
基本思路是:在VC中使用windows字库在屏幕上显示一个字,读出点阵信息,存入一个文件。
非常奇怪的是如果只保存一个字的点阵信息,写到文件后,文件是GB2312编码的,可是如果使用循环一次保存多个字的点阵信息,写到文件后就变成了UNICODE编码的文件。奇怪,请知道的人帮帮我。
伪码如下:
int savedCharNum = 0;
int allCharNum= 20; //examle
CFile zimoFile;//保存字符点阵信息的文件
while(savedCharNum < allCharNum)
{
dc.text(xPos,yPos,str);
getZimo();//得到点阵信息
SaveZimo2File();//保存点阵信息到文件
savedCharNum++;
}
这段代码中,如果将while()一句去掉,保存的文件就是GB2312的编码,如果加上这一句就变成了UNICODE编码