_mkdir Einen vom Benutzer angegebener Ordner soll erstellt werden.



  • Ok

    ein kurzer Beispiel-Code würde mir dann schon eher Helfen.

    Danke



  • include <iostream>
    #include <string>
    #include <direct.h>
    
    int main(){
    	std::string ordnername("");
    	std::cin >> ordnername;
    	_mkdir(ordnername.c_str());
    
      return(0);
    }
    

    Eingabe bsp.: C:\\Test



  • Na toll hätte ich das mal gewusst, dass man "string" hätte verwenden sollen.
    bei mir sah das schon von anfang an so aus:

    #include <iostream>
    #include <string>
    #include <direct.h>
    
    using namespace std;
    
    int ordnername;
    
    int main(){
    
        cin >> ordnername;
        _mkdir(ordnername.c_str());
    
      return(0);
    }
    

    ja dann ist klar 😃

    wie kommt es das meins nicht klappte???



  • weil int der Datentyp für eine Zahl ist und nicht für einen String (Zeichenkette)



  • mist!Hätte ich wirklich wissen müssen. 😡



  • wie kann ich dann einen Unterordner erstellen?

    bzw. möchte hätte ich gerne das der neue Ordner unter einem bereits vorhandenen Ordner abspeichert.



  • Da könntest du aber auch selber drauf kommen. Das hat nichts mit dem Programm zu tun, sondern wie du den Pfad im Programm eingibst.
    z.B. wenn der bereits vorhandene Ornder "Bilder" heißt
    C:\\Bilder\\NeuerOrdner



  • :p Das ist mir schon klar ^^

    habe ich mich etwas ungeschickt ausgedrückt.Meine natürlich, dass wenn ein Ordner bereits vorhanden ist (Bilder) ich mit "_makedir" einen Unterordner darin erstellen kann.Dieser soll aber vom benutzer selber angegeben werden.

    habe mir da schon gedanken gemacht:

    _mkdir("bilder\" ordnername.c_str()); 👎
    _mkdir(""bilder\" ordnername.c_str()"); 👎
    _mkdir("bilder\" *ordnername.c_str()); 👎

    ......

    funzt aber alles nicht 😕 ??
    geht das überhaupt mit _makedir?



  • Meinst du sowas?

    #include <iostream>
    #include <string>
    #include <direct.h>
    
    int main(){
        std::string ordnername("");
    	std::string pfad("C:\\Bilder\\");
        std::cin >> ordnername;
    	pfad.append(ordnername);
        _mkdir(pfad.c_str());
    
      return(0);
    }
    

    Ansonsten verstehe ich echt nicht wie du das meinst.



  • Also ich möchte deine c++-Fähigkeiten nicht in Frage stellen aber, was passiert bei dir, wenn du diesen Code eingibts und dann ausführst?

    egal was ich dann eingebe er erstellt keinen Unterordner im Ordner Bilder.

    (was ich gerne hätte ist das wenn ein Ordner bereits vorhanden ist, das ich dann in diesen einen Unterordner erstellen kann.Der Namen des unterordners soll vom Anwender bestimmt werden.) 🙄



  • lordcesarius schrieb:

    Also ich möchte deine c++-Fähigkeiten nicht in Frage stellen aber, was passiert bei dir, wenn du diesen Code eingibts und dann ausführst?

    Ich hab das jetzt in der Arbeit und Zuhause getestet, und bei mir funktioniert es, dass im bereits vorhandenen Ordner Bilder, ein Unterordner erstellt wird.



  • #include <iostream>

    using namespace std;

    int main()
    {
    string text;
    cout << "Ordner -->"; cin >> text;

    system((("md C:\\Bilder\")+text).c_str());
    return 0;
    }



  • #include <iostream>
    
    using namespace std;
    
    int main()
    {
    	string text;
    	cout << "Ordner -->"; cin >> text;
    
    	system((("md C:\\Bilder\\")+text).c_str());
    	return 0;
    }
    

Anmelden zum Antworten