//自定义分隔函数
int Split(CString source, CString ch,CStringArray &strarr)
{
/*---------------------------------------------------------
* 函数介绍: 从原字符串里按照指定的分隔字符串进行分割,将分隔的结果存放到字符串数组里
* 输入参数:
source -- 原字符串
ch -- 指定的分隔字符串
strarr -- 外部引用的一个字符串数组
* 输出参数:
* 返回值 :总共分隔了多少段字符串.
-----------------------------------------------------------*/
CString TmpStr;
strarr.RemoveAll();
if(source.IsEmpty() || ch.IsEmpty())
return 0;
int len=ch.GetLength();
int findi=0;
int findn=0;
int sum=0;
findn=source.Find(ch,findi);
if (findn!=-1)
{
TmpStr=source.Mid(0,findn);
//TmpStr.Trim();
strarr.Add(TmpStr);
findi=findn+len;
sum++;
}
else
{
//source.Trim();
strarr.Add(source);
sum++;
return sum;
}
while (findn!=-1)//有发现
{
findn=source.Find(ch,findi);
if (findn!=-1)
{
TmpStr=source.Mid(findi,findn-findi);
//TmpStr.Trim();//去除头尾空格
strarr.Add(TmpStr);
findi=findn+len;
sum++;
}
else
{
TmpStr=source.Mid(findi,source.GetLength()-findi);
//TmpStr.Trim();
strarr.Add(TmpStr);
sum++;
}
}
return sum;
}