MFC分隔字符串的四种方法

来源:互联网 发布:电脑软件制作 编辑:程序博客网 时间:2024/05/20 11:37
vector<CString> SplitCString(CString strSource, CString ch)
{
vector <CString> vecString;
int iPos = 0;
CString strTmp;
strTmp = strSource.Tokenize(ch,iPos);
while(strTmp.Trim() != _T(""))
{
vecString.push_back(strTmp);
strTmp = strSource.Tokenize(ch,iPos);
}
return vecString;
}
vector<CString> SplitCString(CString strSource, char ch)
{   
CString strTmp;   
vector<CString> vecString;     
int n=-1;
n=strSource.Find(ch);
while(n!=-1)
{
strTmp=strSource.Left(n)       
vecString.push_back(strTmp);
strSource=strsource.left(strSource.Getlenth-n+1)
n=strSource.Find(ch);
}   
return vecString;
}
vector<CString> SplitCString(CString strSource, char ch)
{   
CString strTmp;
vector<CString> vecString;
int iPos=0;
while(AfxExtractSubString(strTmp,strSource,iPos,ch))
{
iPos++;
vecString.push_back(strTmp);
}   
return vecString;
}
vector<CString> SplitCString(CString strSource, char ch)
{
vector<CString> vecString;
CString strTmp=strtok((LPSTR)(LPCTSTR)strSource,ch);//(LPSTR)(LPCTSTR)将CString转char*
while(1)
{    
strTmp=strtok(NULL,ch);
if (strTmp==_T(""))              
break;
strTmp.TrimLeft(); 
vecString.push_back(strTmp);
}
}
0 0