各位大哥
我想做一个文本框,变量是cstring型(假设名为aaa)。然后用户输入的东西是汉字
最后我要对这个aaa进行操作。
貌似要把它转成unicode才可以吧?
但是怎么转呢?
貌似不可以用aaa=_T(aaa)?不然他会说Laaa未定义的标识符还是什么的。
应该怎么做?
谢谢~

解决方案 »

  1.   

    你当前的工程是Unicode编码啊?
      

  2.   

    为啥要转,不用啊
    你直接
    CString str;
    ((CEdit*) GetDlgItem(IDC_EDIT1))->GetWindowText(str);
      

  3.   

    CString aaa; // 关联了编辑框控件UpdateData(TRUE);
    以后你的aa就是编辑框中的值了
      

  4.   

    我也是这样的。但是我这么做了之后使用cstdiofile的那个writestring是写不进去的……看他们说要转一下才能写
      

  5.   

    写中文要:char* old_locale = _strdup( setlocale(LC_CTYPE,NULL) );
    setlocale( LC_CTYPE, "chs" );
    CString strWrite;
    strWrite=L"你好啊";
    CStdioFile file(“11.txt”,CFile::modeCreate | CFile::modeWrite);
    file.WriteString(strWrite);
    file.Close();
    setlocale( LC_CTYPE, old_locale );
    free( old_locale );
      

  6.   

    主要是
    setlocale( LC_CTYPE, "chs" );
      

  7.   


    既然你要做文本框,我理解的是你不用控件,而是自己画出...
    WideCharToMultiByte WCHAR->CHAR 
    MultiByteToWideChar 刚好反过来