引自:
原版:
CStringArray* SplitString(CString string, char pattern)
{
CStringArray* strArray = new CStringArray();
CString strTemp;
char c;
for(int i=0;i<string.GetLength();i++)
c=string[i];
if(c==pattern)
strArray->Add(strTemp);
strTemp="";
}
else
strTemp+=c;
return strArray;
修改版(以單個字元分割)
strTemp = string;
int iPos = 0;
while(iPos != -1)
iPos = strTemp.Find(pattern);
if(iPos == -1)
break;
strArray->Add(strTemp.Left(iPos));
strTemp = strTemp.Mid(iPos+1, strTemp.GetLength());
修改版2(以多個字元分割)
CStringArray* SplitString(CString string, char pattern[])
int nPattern = strlen(pattern);
BOOL bFind = FALSE;
for(int i=0; i<string.GetLength(); i++)
c = string[i];
for(int j=0; j<nPattern; j++)
if(c == pattern[j])
if(strTemp != "")
bFind = TRUE;
bFind = FALSE;
if(bFind)
strTemp = "";
strTemp += c;
使用:
char s[] = {‘ ‘, ‘,‘, ‘\0‘};
CStringArray strPolygon = *SplitString(strTemp, s);