VC中如何判断一个汉字字符是哪一个汉字字符

来源:百度知道 编辑:UC知道 时间:2024/09/24 12:29:42
我有一个文件保存的数据格式为:
船舶编号MMSI:412015070 航行状态:动力航行中 北纬37.21348****东经127.23443 船速:0.10节
我想提取船舶编号“412015070”,北纬“37.21348”,东经“127.23443”这些数字字符。
另外我通过VC读取这些文件的时候,应该定义怎样的数据类型来保存它呢?我想最好用CString类型的,怎样将其转换为CString类型的!
比如我想提取纬度的时候,我想判断获得字符是否为"纬",应该怎样判断?

CStdioFile类的ReadString函数,读出来就是CString类型的

用CString 的Find函数直接查找这个字就行了

CString strFileName = "d:\\1.txt";
CFile file ;
file.Open(strFileName,CFile::modeRead);
{
char szTmp[1000] = {0};
int iFileLeng = file.GetLength();
file.Read(szTmp,iFileLeng);
CString strText ;
strText = szTmp ;
int iPos1 = strText.Find("北纬");
int iPos2 = strText.Find("东经");

CString strTmp = strText.Mid(iPos1,iPos2 - iPos1);
AfxMessageBox(strTmp);
}
file.Close();

_tchar是专门用来兼容汉字的!宽字节,每个_tchar占两个字节,正好表示一个汉字!

这样判断容易出错。
你直接使用MFC的序列化, CArchive ,你用用就知道了
直接 >> << 就能输入输出你想要的格式。