Wie man Datei-Deskriptoren in C

May 13

Mit der Unix i/o-Funktionen, mit denen Dateideskriptoren in C ist eine alternative Möglichkeit zum Arbeiten mit Dateien in Ihrem Programm. Datei-Deskriptor ist ein ganzzahliger Wert, der eine geöffnete Datei identifiziert. Die C-Standardfunktionen wie "Fopen" und "Fread" sind höhere Ebene Versionen die Basisfunktionen "Öffnen" und "lesen". Verwendung der Datei-Deskriptor-Funktionen ist manchmal notwendig, beim Umgang mit nicht-standard-Typen von Eingang und Ausgang.

Anweisungen

1 Die C-Quelldatei in einem Text- oder Programmier-Editor zu öffnen.

2 Sind die benötigten Bibliotheken zum Zugriff auf die Eingabe und Ausgabefunktionen durch den folgenden Code am oberen Rand der Datei hinzufügen:

enthalten < fcntl.h > / / open Functioninclude < unistd.h > / / close, Writeinclude < sys/types.h > / / Stringsinclude < string.h > 3 Rufen Sie die "offene" Funktion um einen Dateideskriptor zurückzukehren, fügen Sie folgenden Code in Ihrer Funktion:

Int fd = Open ("Meine_Datei", O_CREAT | 0777, O_RDWR);

Das Argument "O_CREAT" zeigt die Funktion zum Erstellen einer Datei mit dem Namen "Meine_Datei", falls diese nicht bereits existiert. Das "O_RDWR" Argument gibt, das Lesen und Schreiben in die Datei zulässig sind. Das "0777" Argument gibt die Schutz-Bits für die Datei.

4 Schreiben Sie in die Datei mit der "schreiben"-Funktion, mit der Dateideskriptor, indem Sie den folgenden Code hinzufügen:

Char Buf [20];

Size_t Anzahl_Bytes;

Ssize_t Bytes_num_writ;

Strcpy (Buf, "Hallo Welt!");

Anzahl_Bytes = strlen(buf);

Bytes_num_writ = Write (fd, Buf, Anzahl_Bytes);

Der Code schreibt die Zeichenfolge "Hello World!" in die Datei.

5 Schließen Sie die Datei, wenn Sie fertig sind mit der "enge" Funktion durch Hinzufügen des Codes:

Close(FD);

6 Speichern Sie die C-Datei, kompilieren Sie und führen Sie das Programm mit der Datei-Deskriptoren zu arbeiten.