U.H.D Geschrieben 9. März 2004 Geschrieben 9. März 2004 Hallo zusammen! Gibt es unter C einen Befehl, mit dessen Hilfe ich Dateien von ein Verzeichnis in ein anderes kopieren oder verschieben kann? Unter C++ wird man da ja schnell fündig, aber für C blieb ich bislang erfolglos. Kann mir diesbezüglich vielleicht jemand weiterhelfen? mfg U.H.D
Guybrush Threepwood Geschrieben 9. März 2004 Geschrieben 9. März 2004 Das hängt vom Betriebssystem ab. Du kannst z.B. mit system() Konsolenbefehle durchführen, oder unter Windows die MoveFile() API benutzen.
nic_power Geschrieben 9. März 2004 Geschrieben 9. März 2004 Hallo, Beides läßt sich auch in Standard C implementieren: Zum Kopieren einer Datei erzeugt man am Zielort eine neue Datei gleichen Namens und kopiert den Inhalt der Quelldatei in diese neue Datei (beispielsweise mittels fread und fwrite). Bei einem move (umbennenen) kann man identisch vorgehen und im Anschluss die Original-Datei mit Hilfe von "remove()" löschen. Eine Alternative ist die Verwendung von "rename()". Problematisch kann es allerdings bei Special-Files wie beispielsweise Pipes,Hard- oder Softlinks, usw. werden. In dem Fall muss man auf die Betriebssystemfunktionen bzw. passenden Systemcalls zurückgreifen. Nic
Mr. D Geschrieben 27. März 2004 Geschrieben 27. März 2004 Hi, also falls du noch das Problem hast, hier is die Lösung(hoff ich doch *g*) _______________________________________________________________ void main (void){ FILE *datei, *datei2; char cZeichen; char name[90]; char name1[90]; int cText; printf("Bitte geben Sie den Pfad fuer die Datei ein die Sie kopieren moechten: "); gets(name); datei= fopen(name,"r"); printf("\nBitte geben Sie den Pfad ein wo die Datei kopiert wird: "); gets(name1); datei2= fopen(name1,"w"); if (datei == NULL || datei2 == NULL) printf("Fehler beim oeffnen\n"); else{ while((cZeichen =getc(datei))!=EOF){ putc(cZeichen,datei2); } fclose(datei); fclose(datei2); } }
kLeiner_HobBes Geschrieben 28. März 2004 Geschrieben 28. März 2004 Ich würde die Dateien explizit im Binary-Mode öffnen:fopen(filename,"rb") bzw. fopen("filename,"wb");
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden