//#include "stdafx.h" //#include "Tokenizer.h" // //CTokenizer::CTokenizer(const CString &cs, const CString &csDelim): m_cs(cs), m_nCurPos(0) //{ // SetDelimiters(csDelim); //} // //void CTokenizer::SetDelimiters(const CString &csDelim) //{ // for(int i = 0; i < csDelim.GetLength(); ++i) // { // m_delim.Add(csDelim[i]); // } // // m_delim.SortAscending(); //} // //bool CTokenizer::Next(CString &cs) //{ // cs.Empty(); // int len = m_cs.GetLength(); // // while(m_nCurPos < len && m_delim.Find(m_cs[m_nCurPos])) // { // ++m_nCurPos; // } // // if(m_nCurPos >= len) // { // return false; // } // // int nStartPos = m_nCurPos; // // while(m_nCurPos < len && !m_delim.Find(m_cs[m_nCurPos])) // { // ++m_nCurPos; // } // // cs = m_cs.Mid(nStartPos, m_nCurPos - nStartPos); // // return true; //} // //CString CTokenizer::Tail() //{ // int len = m_cs.GetLength(); // int nCurPos = m_nCurPos; // // while(nCurPos < len && m_delim.Find(m_cs[nCurPos])) // { // ++nCurPos; // } // // CString csResult; // if(nCurPos < len) // { // csResult = m_cs.Mid(nCurPos); // } // // return csResult; //}