MFC实现C#,java中的Split方法

来源:互联网 发布:淘宝差评报复 编辑:程序博客网 时间:2024/05/20 05:56

MFC中对CString类型的操作并没有Java和C#中封装的类似Split方法,此方法是用于实现按指定符号分隔字符串保存到数组中,例如: string str = "a,b,c,d,e,f" 那么经过调用Split(',')后就返回一个数组string[],分别保存着a, b, c, d, e, f 然后循环遍历数组就可以取到没一项了。下面是MFC实现这一功能的代码:

//实现C#的String.Split()方法vector<CString> Split(CString string){CString oriStr = string;vector<CString> strVec;while (true){CString n = oriStr.SpanExcluding(",");//获取.之前的字符串strVec.push_back(n);oriStr = oriStr.Right(oriStr.GetLength()-n.GetLength()-1);//从右边1开始获取从右向左前 nCount 个字符if (oriStr.IsEmpty()){break;}}return strVec;}


 最后被保存在一个CString类型的vector中,同样遍历vetcor就可以得到每一项的值;for(int i = 0; i < vectStr.size(); i++)还有更高效的遍历方法这儿就不多说了,以后需要这个函数就直接使用了。