UnicodeString + std::string



  • Hallo, benutze RAD Studio XE6,

    ich habe einen std::string und einen UnicodeString:

    std::string blabla = "C:\\";
    UnicodeString irgendwas = Edit1->Text;
    

    Ich möchte die beiden nun in einem CreateDirectory() zusammenfügen:

    CreateDirectory(blabla + irgendwas, NULL);
    

    Leider muss lpPathName ein wchar_t sein. Ich hätte mir gedacht, die beiden zusammenzufügen und sie dann zu konvertieren, jedoch weiß ich nicht, wie ich das realisieren sollte.

    Danke schonmal im Voraus!





  • std::string str = "Lorem ipsum dolor sit amet, consetetur!";
    std::wstring wStr = std::wstring(str.begin(), str.end());
    wprintf(L"Ich bin ein Wide-String: \"%s\"\n", wStr.c_str());
    

    Es still sich allerdings die Frage, wieso "blabla" bei Dir nicht ohnehin ein Wide/Unicode-String ist 😕

    Spätestens wenn der Pfad mal Zeichen enthält, die in Deiner aktuell ausgewählten ANSI-Codepage nicht darstellbar sind, wirst Du Probleme bekommen...


Anmelden zum Antworten