Befehl um einen Ordner zu erstellen?
-
Moin,
wollte mal wissen wie es unter windows möglich ist ein programm zu schreiben das ein ordner nach dem anderen erstellt (sinnlos aber trotzdem interessant)
habe mir das so gedacht
#include <iostream> using namespace std; int main() { int i=1; while(i<=100) { cout << "md bla " << i << endl; i=i+1; } }quasi das er einen ordner bla + zufalls zahl erstellt bis er 100 druch hat! nur geht leider nicht

-
Mit Standard-C++ Mitteln geht das afaik nicht, da mußt du schon auf systemabhängige Funktionen (z.b. CreateDirectory()) oder boost::filesystem zurückgreifen.
-
Es gibt die Funktion mkdir(const char*, mode_t) in <sys/stat.h>. Zumindest unter POSIX. Ich weiß allerdings nicht, ob das mit diesem nicht-Standard-Betriebssystem auch so geht.
Tommi
-
Wenn du mehrere Ordner erstellen willst, dann könntest du es so machen
#include <iostream> #include <windows.h> #include <cstring> #include <sstream> using namespace std; int main() { string Pfad = "C:\\Test\\Ordner"; string OrdnerName; ostringstream OrdnerNummer; for(int i=1; i<=100; i++) { OrdnerNummer << i; OrdnerName = Pfad + OrdnerNummer.str(); CreateDirectory(OrdnerName.c_str(), NULL); OrdnerNummer.str(""); } }Und wenn die Ordner Nummer mit zufälligen Zahlen haben soll, dann lässt du dir mit rand() zufällige Zahlen erstellen, und lässt diese anstatt "i" anhängen.
-
system("mkdir test");geht auch, ist aber bestimmt keine saubere Art und weise und funktioniert auch nur in DOS-Eingabeaufforderung

-
nki schrieb:
system("mkdir test");geht auch, ist aber bestimmt keine saubere Art und weise und funktioniert auch nur in DOS-Eingabeaufforderung

Das fällt dir ja sehr früh ein

-
wieso.
Ich hab halt mal nen bisschen im Forum gestöbert

Kann doch trotzdem noch auf nen Thread antworten, solang er net geschlossen ist, obwohl er schon bisschen älter ist :pich sag's ja nur der vollständigkeitshalber, hehe
-
nki schrieb:
ich sag's ja nur der vollständigkeitshalber, hehe
Ok, der "vollständigkeitshalber" hättest du dann noch ein bisschen weiter stöbern können, dann hättest du nämlich das gefunden.
system()
:p
-
Boost bietet betriebssystemunabhängige Funktionen zum Arbeiten mit dem Dateisystem an:
using boost::filesystem; create_directory("NewFolder");