CString::Tokenize()和AfxExtractSubString()这两个函数都用来截取特定分隔符的字符串,其中有些区别值得注意。
CStringT Tokenize(PCXSTR pszTokens, int& iStart) const;
BOOL AFXAPI AfxExtractSubString(CString& rString, LPCTSTR lpszFullString, int iSubString, TCHAR chSep = '\n');
CString::Tokenize()中的PCXSTR pszTokens为分隔字符的组合,可为多个字符。int& iStart是开始位置,函数运行后会发生变化。
AfxExtractSubString()中的TCHAR chSep为分隔字符,只能是一个字符。
另外有一点要注意:
CString::Tokenize()碰到连续多个分隔字符是作为一个处理的,AfxExtractSubString()中多个分隔符可区分处理。