读书人

CString 字符串提取异常。求教

发布时间: 2012-05-22 18:18:54 作者: rapoo

CString 字符串提取错误。。求教
for (size_t i=0; i<vecFile.size(); i++)
{
CString strFile = vecFile[i].c_str();

int nPos = strFile.ReverseFind('\\')+1;
CString strFileFolder = strFile.Left(nPos);
strFile.Delete(0, nPos);
CString strDest = strFile;
int nPos2 =3;//获取文件格式
CString strLast = strFile.Right(nPos2);


其中CString strLast = strFile.Right(nPos2);strLast 是错误指针。。strFile="aFileRename.exe"怎么获取文件格式。。字符串最右3个字符会获取不到呢??CString strFileFolder = strFile.Left(nPos);这个执行又没问题。 跪求高手指点我下



[解决办法]

C/C++ code
vector<string> vecFile;vecFile.push_back("1212.txt");vecFile.push_back("1212.bak");for (size_t i=0; i<vecFile.size(); i++){string strFile = vecFile[i];size_t dotIndex = strFile.find_last_of('.');string fileType = (dotIndex!=string::npos?strFile.substr(dotIndex+1):string(""));cout << strFile << " Type:" << fileType << endl;} 

读书人网 >C++

热点推荐