string zu char* aber string mit leerzeichen



  • Hallo zusammen,

    Ich will innerhalb eines bestimmten Pfades die Ordner durchgehen und verwendete dazu FindFirstFile/FindNextFile.

    HANDLE fHandle;
    WIN32_FIND_DATA wfd;
    char dirname[] = "C:\\Dokumente und Einstellungen\\etc\\*";
    fHandle=FindFirstFile(dirname,&wfd);
    

    klappt wunderbar...

    Da jedoch der Pfad abgefragt werden soll, versuchte ich es so:

    HANDLE fHandle;
    WIN32_FIND_DATA wfd;
    string path;
    cin >> path;
    const char* dirname = path.c_str();
    fHandle=FindFirstFile(dirname,&wfd);
    

    Problem: Der String wird nur bis zum ersten "white space" konvertiert, d. h.
    der Pfad: "C:\Dokumente und Einstellungen\etc\*"
    lautet: "C:\Dokumente"

    Frage:
    Wie kann ich so realisieren, dass der ganze String konvertiert wird oder wie kann man das ganze eleganter machen?

    Vielen Dank im Voraus

    TechM



  • std::getline(std::cin, path);
    


  • Oh ja das habe ich vergessen!
    Vielen Dank.

    TechM


Anmelden zum Antworten