VC++中如何将一个CString字符串转化为数字?(该字符串由数字和特殊字符组成)

时间:2020-12-26 22:29:58

运用函数AfxExtractSubString可以解决.
BOOL AfxExtractSubString(CString& rString, LPCTSTR lpszFullString,int iSubString, TCHAR chSep = '/n') 参数说明: rString 得到的字符串;lpszFullString 待分割的字符串;iSubString 要得到第几个字符串;chSep 个子串之间的分隔符,默认是回车;
举例:
//实现的功能是把m_day1中的数字存放到字符串数组str中.
CString m_day1=”2009/11/07-12:12:12”;
CString tempstr1,tempstr2,tempstr3;
CString str[6];
for(int i=0;i <3;i++)
{
AfxExtractSubString(tempstr1,m_day1,i,'/');
str[i]=tempstr1;
}//tempstr1=="07-12:12:12"
for(i=0;i <2;i++)
{
AfxExtractSubString(tempstr2,tempstr1,i,'-');
str[i+2]=tempstr2;
}//tempstr2=="12:12:12"
for(i=0;i <3;i++)
{
AfxExtractSubString(tempstr3,tempstr2,i,':');
str[i+3]=tempstr3;
}
//如果要把字符串数组变为整型数组只要使用int atoi(const char*)函数即可.
函数AfxExtractSubString但是有两个限制: 1.仅仅能在MFC下使用的函数 2.分隔只能使用字符,不能使用字符串。