String-Casts



  • Ich verzweifle mal wieder mit den String-Konvertierungen. Hintergrund: ich bekomme aus einer Datenbank ein CStringW und muss das in einen std::string umwandeln und umgekehrt.

    Ich habe irgendwo gelesen, dass man CStringW->string

    CStringW Test=L"This is a test";
    const char* charTest;
    charTest=(const char*)LPCTSTR(Test);
    

    so machen so. Aber da wird ja nur das erste Zeichen umgesetzt. Ansonsten seh ich da grad den Wald vor lauter Bäumen nicht. Kann mir da jemand einen Tipp geben?



  • Ok, man sollte nicht so voreilig sein. Mit

    CString cs ("Hello");
    
      // Convert a TCHAR string to a LPCSTR
      CT2CA pszConvertedAnsiString (cs);
    
      // construct a std::string using the LPCSTR input
      std::string strStd (pszConvertedAnsiString);
    

    funktionierts (zumindest ab VC 7.X).


Anmelden zum Antworten