Namespaces
Variants

rename

From cppreference.net
< c ‎ | io
Definiert im Header <stdio.h>
int rename ( const char * old_filename, const char * new_filename ) ;

Ändert den Dateinamen einer Datei. Die Datei wird durch die Zeichenkette identifiziert, auf die old_filename zeigt. Der neue Dateiname wird durch die Zeichenkette identifiziert, auf die new_filename zeigt.

Wenn new_filename existiert, ist das Verhalten implementierungsdefiniert.

Inhaltsverzeichnis

Parameter

old_filename - Zeiger auf einen nullterminierten String, der den Pfad der umzubenennenden Datei enthält
new_filename - Zeiger auf einen nullterminierten String, der den neuen Pfad der Datei enthält

Rückgabewert

0 bei Erfolg oder einen Wert ungleich Null bei Fehler.

Hinweise

POSIX spezifiziert viele zusätzliche Details zur Semantik dieser Funktion.

Beispiel

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
    FILE* fp = fopen("from.txt", "w"); // Datei "from.txt" erstellen
    if (!fp)
    {
        perror("from.txt");
        return EXIT_FAILURE;
    }
    fputc('a', fp); // in "from.txt" schreiben
    fclose(fp);
    int rc = rename("from.txt", "to.txt");
    if (rc)
    {
        perror("rename");
        return EXIT_FAILURE;
    }
    fp = fopen("to.txt", "r");
    if(!fp)
    {
        perror("to.txt");
        return EXIT_FAILURE;
    }
    printf("%c\n", fgetc(fp)); // aus "to.txt" lesen
    fclose(fp);
    return EXIT_SUCCESS;
}

Mögliche Ausgabe:

a

Referenzen

  • C23-Standard (ISO/IEC 9899:2024):
  • 7.21.4.2 Die rename-Funktion (S.: TBD)
  • C17-Standard (ISO/IEC 9899:2018):
  • 7.21.4.2 Die rename-Funktion (S.: TBD)
  • C11-Standard (ISO/IEC 9899:2011):
  • 7.21.4.2 Die rename-Funktion (S: 302-303)
  • C99-Standard (ISO/IEC 9899:1999):
  • 7.19.4.2 Die rename-Funktion (S: 268-269)
  • C89/C90-Standard (ISO/IEC 9899:1990):
  • 4.9.4.2 Die rename-Funktion

Siehe auch

löscht eine Datei
(Funktion)