C++分割字符串

来源:互联网 发布:飞蛾扑火算法 编辑:程序博客网 时间:2024/06/08 05:55
C++分割字符串

"100,100;500,500;300,300;150,150;30,30"

复制代码
static void split(const string& src, const string& separator, vector<string>& dest)    {        string str = src;        string substring;        string::size_type start = 0, index;        do        {            index = str.find_first_of(separator,start);            if (index != string::npos)            {                    substring = str.substr(start,index-start);                dest.push_back(substring);                start = str.find_first_not_of(separator,index);                if (start == string::npos) return;            }        }while(index != string::npos);        //the last token        substring = str.substr(start);        dest.push_back(substring);    }
复制代码
复制代码
//调用vector<string> vecData;            CXCommon::split(CCXmlReader::getXMLNodeAttribStrs(pItemNode, "data"), string(";"), vecData);            for (unsigned int i = 0; i < vecData.size(); i++)            {                vector<string> vecPos;                CXCommon::split(vecData[i], string(","), vecPos);                if (!vecPos.empty())                {                    mapInfo.foundationPos.push_back(CCPoint(atof(vecPos[0].c_str()), atof(vecPos[1].c_str())));                }            }
0 0
原创粉丝点击