C-Programmierung

File Open

Dateideskriptor | | File Error

Um eine Datei zu öffnen und einen Dateideskriptor zu erhalten, steht die Funktion fopen() zur Verfügung:

FILE *fopen(const char *file_name, const char *mode);

Anwendungsbeispiel:

#include <stdio.h>

FILE *file; /* pointer to file descriptor of predefined type FILE */

file=fopen("name.txt", "r+"); /* open text file for reading + writing */

Der Pfad eines Dateinamens wird entweder als absoluter Pfad angegeben (“/dir/sub-dir/name.txt”) oder als relativer Pfad in Bezug auf das aktuelle Arbeitsverzeichnis, von dem das Programm gestartet wurde (“dir/name.txt”). Die Unterscheidung erfolgt durch den ‘/’ am Anfang des Pfads. Das übergeordnete Verzeichnis erreicht man mit dem doppelten Punkt (“../name.txt”).

Der erste Buchstabe des Mode-Strings hat die folgende Bedeutung:

ModeBedeutungBemerkung
rText-Datei öffnen zum Lesen (read)Lesen am Dateianfang
wText-Datei öffnen zum Schreiben (write)Existierende Datei wird gelöscht
aÖffnen zum Anfügen (append)Schreiben am Dateiende

Der zweite Buchstabe des Mode-Strings hat die folgende Bedeutung:

ModeBedeutungBemerkung
bBinär-Datei öffnenStandard unter Linux
+Öffnen für Lesen und Schreiben 

Im Normalfall will man auf Dateien im read-only-Modus zugreifen, d.h. der passenden Zugriffsmodus ist “r” für Textdateien bzw. “rb” für Binärdateien.

Dateideskriptor | | File Error

Options: