wince下的文件读写不注意很容易出现乱码的情况,因为在windows和CE下的字符编码方式不一样。CE中采用unicode,普通windows采用ANSI,所以在CE中,在字符串写进文本前需要进行转换。
//这两个函数都是将UNICODE码转换成Gb2312,这个的优势是可以转换中文。
int UnicodeToGb2312(CString str1,char* send_data)
{
int iSize;
iSize = WideCharToMultiByte(CP_ACP, 0, (LPCWSTR)(LPCTSTR)str1, -1, NULL, 0, NULL, NULL);
WideCharToMultiByte(CP_ACP, 0, (LPCWSTR)(LPCTSTR)str1, -1, send_data,iSize, NULL, NULL);
return iSize;
}