AfxExtractSubString是截取字符串的函数,很好用,不过美中不足的地方在与它只能使用单个字符作为分割符。
但是这种情况在很多时候都行不通,如果分割符需要是两个字符以上呢?
之前因为这个问题试了很久,也在网上搜索过。不过可惜的是,网上的大部分关于VC截取字符串的文章都是那么同样的几篇,都是写的满复杂然后可以实现了AfxExtractSubString功能而已的,也就是只能用单个字符截取,但是标题却写着用字符串截取字符串,好笑!
不找了,自己写吧。CString里面有Find,然后再组成数组。
CStringsource是需要截取的原字符串,
CStringArray&dest 是最终结果的数组
CStringdivision 是用来做分割符的字符串
使用方式:
您还没有登录,请您登录后再发表评论
VC中分割字符串的AfxExtractSubString函数
在VC++编程中,我们有时会遇到关于截取字符串的问题,对于CString类型字符串的截取VC中有现成的函数可供使用,主要是:CString Mid (int nFirst, int nCount);和BOOL AfxExtractSubString (CString& rString, ...
//vc字符串分割函数 AfxExtractSubString( x, (LPCTSTR)strTmp, 1, '|');//取数组1 AfxExtractSubString( y, (LPCTSTR)strTmp, 2, '|');//取数组2 //___________________________________________________________...
网上有很多类似例子,但很多在VC6.0环境下不能使用, 例子在《把脉VC++》第6章源码基础上进行修改。主要修改内容包括:vc6.0中GetCount()没有,用GetSize代替;Tokenize采用AfxExtractSubString进行代替;书中源码在...
AfxExtractSubString(sTemp, (LPCTSTR)value, j, ',');// 得到第N个 sTemp.TrimLeft();//去掉空格 sTemp.TrimRight(); strArray.Add(sTemp); } str=strArray.GetAt(0); for(i=0; i { if(str[i]==...
报错误error C2065: '_beginthreadex' :undeclared identifier
相关推荐
VC中分割字符串的AfxExtractSubString函数
在VC++编程中,我们有时会遇到关于截取字符串的问题,对于CString类型字符串的截取VC中有现成的函数可供使用,主要是:CString Mid (int nFirst, int nCount);和BOOL AfxExtractSubString (CString& rString, ...
//vc字符串分割函数 AfxExtractSubString( x, (LPCTSTR)strTmp, 1, '|');//取数组1 AfxExtractSubString( y, (LPCTSTR)strTmp, 2, '|');//取数组2 //___________________________________________________________...
网上有很多类似例子,但很多在VC6.0环境下不能使用, 例子在《把脉VC++》第6章源码基础上进行修改。主要修改内容包括:vc6.0中GetCount()没有,用GetSize代替;Tokenize采用AfxExtractSubString进行代替;书中源码在...
AfxExtractSubString(sTemp, (LPCTSTR)value, j, ',');// 得到第N个 sTemp.TrimLeft();//去掉空格 sTemp.TrimRight(); strArray.Add(sTemp); } str=strArray.GetAt(0); for(i=0; i { if(str[i]==...
报错误error C2065: '_beginthreadex' :undeclared identifier