Funkcija fopen () u C ++ otvara navedenu datoteku u određenom načinu.
protopen fopen ()
FILE * fopen (const char * naziv datoteke, način const char *);
fopen()
Funkcija traje dva argumenta i vraća tok datoteke povezane s tom datoteka koji je argument datoteke.
Definirano je u datoteci zaglavlja.
Različite vrste načina pristupa datotekama su kako slijedi:
Način pristupa datotekama | Tumačenje | Ako datoteka postoji | Ako datoteka ne postoji |
---|---|---|---|
"r" | Otvara datoteku u načinu čitanja | Čitajte od početka | Pogreška |
"w" | Otvara datoteku u načinu pisanja | Izbrišite sav sadržaj | Stvori novu datoteku |
"a" | Otvara datoteku u načinu dodavanja | Počnite pisati od kraja | Stvori novu datoteku |
"r +" | Otvara datoteku u načinu čitanja i pisanja | Čitajte od početka | Pogreška |
"w +" | Otvara datoteku u načinu čitanja i pisanja | Izbrišite sav sadržaj | Stvori novu datoteku |
"a +" | Otvara datoteku u načinu čitanja i pisanja | Počnite pisati od kraja | Stvori novu datoteku |
fopen () Parametri
- ime datoteke: pokazivač na niz koji sadrži naziv datoteke koju treba otvoriti.
- način: Pokazivač na niz koji određuje način u kojem se datoteka otvara.
fopen () Povratna vrijednost
- Ako je uspješna,
fopen()
funkcija vraća pokazivač na objekt FILE koji kontrolira otvoreni tok datoteka. - U slučaju neuspjeha, vraća null pokazivač.
Primjer 1: Otvaranje datoteke u načinu pisanja pomoću fopen ()
#include #include using namespace std; int main() ( int c; FILE *fp; fp = fopen("file.txt", "w"); char str(20) = "Hello World!"; if (fp) ( for(int i=0; i
When you run the program, it will not generate any output but will write "Hello World!" to the file "file.txt".
Example 2: Opening a file in read mode using fopen()
#include using namespace std; int main() ( int c; FILE *fp; fp = fopen("file.txt", "r"); if (fp) ( while ((c = getc(fp)) != EOF) putchar(c); fclose(fp); ) return 0; )
When you run the program, the output will be (Assuming the same file as in Example 1):
Hello World!
Example 3: Opening a file in append mode using fopen()
#include #include using namespace std; int main() ( int c; FILE *fp; fp = fopen("file.txt", "a"); char str(20) = "Hello Again."; if (fp) ( putc('',fp); for(int i=0; i
When you run the program, it will not generate any output but will append "Hello Again" in a newline to the file "file.txt".