rename, _wrename

Benennt eine Datei oder ein Verzeichnis um.

Syntax

int rename(
   const char *oldname,
   const char *newname
);
int _wrename(
   const wchar_t *oldname,
   const wchar_t *newname
);

Parameter

oldname
Zeiger auf den alten Namen.

newname
Zeiger auf den neuen Namen.

Rückgabewert

Jede dieser Funktionen gibt 0 zurück, wenn sie erfolgreich ist. Bei einem Fehler gibt die Funktion einen Wert ungleich null zurück und legt errno auf einen der folgenden Werte fest:

Wert vom Typ errno Bedingung
EACCES Datei oder Verzeichnis, die durch newname bereits vorhanden oder nicht erstellt werden konnte (ungültiger Pfad) oder oldname ist ein Verzeichnis und newname gibt einen anderen Pfad an.
ENOENT Datei oder Pfad, die durch oldname nicht gefunden wurde.
EINVAL Name enthält ungültige Zeichen.

Weitere mögliche Rückgabewerte finden Sie unter _doserrno, _errno, , syserrlistund _sys_nerr.

Hinweise

Die rename Funktion benennt die datei oder das Verzeichnis um, die durch oldname den angegebenen Namen angegeben wird newname. Der alte Name muss der Pfad einer vorhandenen Datei oder eines vorhandenen Verzeichnisses sein. Der neue Name darf nicht der Name einer vorhandenen Datei oder eines vorhandenen Verzeichnisses sein. Sie können rename eine Datei aus einem Verzeichnis oder Gerät in ein anderes verschieben, indem Sie einen anderen Pfad im newname Argument angeben. Sie können jedoch nicht zum Verschieben eines Verzeichnisses verwenden rename . Verzeichnisse können umbenannt, aber nicht verschoben werden.

_wrename ist eine Breitzeichenversion von _rename. Die Argumente für _wrename sind Zeichenfolgen mit Breitzeichen. _wrename und _rename verhalten sich andernfalls identisch.

Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.

Mapping generischer Textroutinen

TCHAR.H-Routine _UNICODE und _MBCS nicht definiert _MBCS definiert _UNICODE definiert
_trename rename rename _wrename

Anforderungen

Routine Erforderlicher Header
rename <io.h> oder <stdio.h>
_wrename <stdio.h> oder <wchar.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Libraries

Alle Versionen der C-Laufzeitbibliotheken.

Beispiel

// crt_renamer.c
/* This program attempts to rename a file named
* CRT_RENAMER.OBJ to CRT_RENAMER.JBO. For this operation
* to succeed, a file named CRT_RENAMER.OBJ must exist and
* a file named CRT_RENAMER.JBO must not exist.
*/

#include <stdio.h>

int main( void )
{
   int  result;
   char old[] = "CRT_RENAMER.OBJ", new[] = "CRT_RENAMER.JBO";

   /* Attempt to rename file: */
   result = rename( old, new );
   if( result != 0 )
      printf( "Could not rename '%s'\n", old );
   else
      printf( "File '%s' renamed to '%s'\n", old, new );
}

Output

File 'CRT_RENAMER.OBJ' renamed to 'CRT_RENAMER.JBO'

Siehe auch

Dateibehandlung