如:CString str=L"<ABC  DEF HGC 456 PPP>"如何删除其中所有的空格,使其成为:str=L"<ABCDEFHGC456PPP>"

解决方案 »

  1.   

    CString csText = _T("ab cd ef gh");
    csText.Replace(_T(" "), _T(""));
      

  2.   

    都改成双引号
    str.Replace(" ","");
      

  3.   

    提示:error C2664: 'int ATL::CStringT<BaseType,StringTraits>::Replace(wchar_t,wchar_t)' :'const char [2]‘无法从'wchar_t'转换
      

  4.   

    CString str=L"<ABC DEF HGC 456 PPP>";
    str.Replace(_T(" "), _T(""));测试过了,可以的呀。
      

  5.   

    我程序中是这样做的:
    CString str=L"";
    str.Format(L"<%s %s %s %s %s>\n",pNode->str1,pNode->str2,pNode->str3,pNode->str4,pNode->str5);
    其中str1、str2、str3、str4、str分别是ABC DEF HGC 456 PPP
    是不是Format之后格式就不能改了啊!!
      

  6.   

    你用是不是VC6,而是VC.NET啊。我记得需要修改一下系统参数,否则就会出现使用CString类的函数时,总是把参数当做wchar_t类型。
      

  7.   

    VC7以上会将将wchar_t作为编译器的内置数据类型,需要将这个编译选项控制关闭
      

  8.   

    CString str=L"<ABC DEF HGC 456 PPP>";
    str.Replace(L" ",L"");或者CString str=L"<ABC DEF HGC 456 PPP>";
    str.Remove(' ');
      

  9.   

    把下面这几种几个%s之间的空格去掉就OK了!!
    str.Format(L"<%s %s %s %s %s>\n",pNode->str1,pNode->str2,pNode->str3,pNode->str4,就这样:
    str.Format(L"<%s%s%s%s%s>\n",pNode->str1,pNode->str2,pNode->str3,pNode->str4,
      

  10.   

    str.Format(L"<%s %s %s %s %s>\n",pNode->str1,pNode->str2,pNode->str3,pNode->str4,pNode->str5);
    改为 str.Format(L"<%s%s%s%s%s>\n",pNode->str1,pNode->str2,pNode->str3,pNode->str4,pNode->str5);