none
CString 使用的问题 RRS feed

  • 问题

  • 有一字符串,现在要提取出最后“/....../” 之间的字符串,例如:

    CString str = _T("..../abcdefg.html/.......");

    我要提取出abcdefg.html,我使用的方法是:

    int n1=0;    int  n2=0;

    while(!str.IsEmpty())

    {

    n1 = str.Find('/');

    n2 = n1;

    }

    这里的n1, n2是在字符串中的位置,我不知道用什么函数取出要的字符串?


    xiao
    2011年3月17日 9:07

答案

  • CString str = _T("..../abcdefg.html/.......");
     LPCTSTR szToken = _T("/");
     int len = _tcslen(szToken);
     int start = str.Find(szToken);
     if(-1 != start)
     {
      int end = str.Find(szToken, start+len);
      if(-1 != end)
      {
       start += len;
       CString strText = str.Mid(start, end - start);
       AfxMessageBox(strText);
      }
     }
    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    • 已标记为答案 wh_xiao 2011年3月17日 14:03
    2011年3月17日 9:20
    版主