Ordner rekursiv löschen
-
Hallo ich will für die Arbeit ein kleines C Programm schreiben, das mir einen Ordner mit Dateien und Unterordnern rekursiv löscht. Allerdings hab ich schon seit 2 Jahren kein C mehr programmiert und habe deshalb ein paar Probleme. Könnt ihr mir einen kleinen Denkanstoß geben? Bisher habe ich nur herausgefunden wie man leere Ordner/Dateien löscht:
#include <dir.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { rmdir("Garmin\\GPX"); /* mkdir("F:\\Garmin\\GPX"); remove ("Garmin\\GPX\\GC1C4R7.GPX"); */ return EXIT_SUCCESS; }
-
system("rd /s /q Garmin\\GPX"); /* für Windows */
-
Besten Dank für die schnelle Hilfe.
Aber wo kann man denn sowas am besten nachschlagen hab ewig gegoogelt. Bin nur Java mit seinen gut Dokumentierten Klassenbibliotheken gewohnt...
-
sytem ist eine Funktion der Standardbibliothek. Dir tuft den Kommandoprozessor vom Betriebssystem auf.
http://www.cplusplus.com/reference/clibrary/cstdlib/system/rd (für removedirectory) ist der Löschbefegh für Verzeichnisse von der Windows-Konsole. Das hat mit C nichts zu tun.
-
mit system kannst du auch windows consolenbefehle ausführen.
das ist manchmal sehr praktisch und hat mit c insofern zu tun, als das du system von c aus aufrufen kannst
http://msdn.microsoft.com/en-us/library/277bwbdz(v=vs.71).aspx
http://igtfy.com/?q=windows+command+line+reference