/****************************************************************************
*
* 函数指针: SplitCString
* 描 述: 将字符串按给定的符号进行拆分
* 创 建: 黄德才[2008-4-11 8:59:58]
*
* 返 回: [int] - 拆分后的子串个数
*
* 函数参数 :[in] strIn - 需要进行拆分的字符串
* [out] strAryRe- 拆分后的字符串数组
* [in] c - 分割符
****************************************************************************/
int CSysCfgApp::SplitCString(CString strIn, CStringArray& strAryRe, char division)
{
strAryRe.RemoveAll();
if (!strIn.IsEmpty())
{
int nCount = 0;
int nPos = -1;
nPos = strIn.Find(division);
CString strTemp = strIn;
while (nPos != -1)
{
CString strSubString = strTemp.Left(nPos);
strTemp = strTemp.Right(strTemp.GetLength() - nPos-1);
nPos = strTemp.Find(division);
nCount++;
strAryRe.Add(strSubString);
}
if (nCount == strAryRe.GetSize())
{
CString str;
int nSize = strIn.ReverseFind(division);
str = strIn.Right(strIn.GetLength()-nSize-1);
strAryRe.Add(str);
}
}
return strAryRe.GetSize();
}
/****************************************************************************
*
* 函数指针: SplitCString
* 描 述: 将字符串按给定的符号进行拆分
* 创 建: 黄德才[2008-4-11 9:30:58]
*
* 返 回: [int] - 拆分后的子串个数
*
* 函数参数 :[in] strIn - 需要进行拆分的字符串
* [out] strAryRe- 拆分后的字符串数组
* [in] str - 分割字符串
****************************************************************************/
int CSysCfgApp::SplitCString(CString &strIn, CStringArray& strAryRe, LPCTSTR str)
{
if (str == _T(""))
{
strAryRe.RemoveAll();
return 0;
}
int nStart = 0;
int nEnd = 0;
CString strTmp;
while ( (nEnd = strIn.Find(str, nStart)) != -1 )
{
strTmp = strIn.Mid(nStart, nEnd-nStart);
strAryRe.Add(strTmp);
nStart = nEnd+2;
}
strTmp = strIn.Mid(nStart, strIn.GetLength());
strAryRe.Add(strTmp);
return strAryRe.GetSize();
}