Fgetc (jazyk C): Rozdiel medzi revíziami
Riadok 30: | Riadok 30: | ||
int main() { | int main() { | ||
FILE * subor; | FILE * subor; | ||
− | + | //otvorenie súboru pre zapisovanie (sem zadajte vlastné umiestnenie súboru) | |
− | + | subor = fopen("test.txt", "w+"); | |
if (subor) { //overenie, či je súbor naozaj otvorený | if (subor) { //overenie, či je súbor naozaj otvorený | ||
Riadok 37: | Riadok 37: | ||
printf("Text zapisany do suboru.\n"); | printf("Text zapisany do suboru.\n"); | ||
fclose(subor); //zatvorenie súboru | fclose(subor); //zatvorenie súboru | ||
− | } | + | } else { |
− | |||
printf("Subor sa nepodarilo otvorit.\n"); | printf("Subor sa nepodarilo otvorit.\n"); | ||
} | } | ||
+ | //otvorenie súboru pre čítanie (sem zadajte vlastné umiestnenie súboru) | ||
+ | subor = fopen("test.txt", "r"); | ||
− | + | if (subor) { //overenie, či je súbor naozaj otvorený | |
− | |||
− | if (subor) { //overenie, či je súbor naozaj otvorený | ||
printf("Text zo suboru: "); | printf("Text zo suboru: "); | ||
− | + | char c; | |
while (!feof(subor)) { //opakuje, pokiaľ nenájde koniec súboru | while (!feof(subor)) { //opakuje, pokiaľ nenájde koniec súboru | ||
c = fgetc(subor); //načítanie jedného znaku zo súboru | c = fgetc(subor); //načítanie jedného znaku zo súboru | ||
Riadok 56: | Riadok 55: | ||
printf("Subor sa nepodarilo otvorit.\n"); | printf("Subor sa nepodarilo otvorit.\n"); | ||
} | } | ||
− | |||
− | |||
return(0); | return(0); | ||
} | } |
Verzia zo dňa a času 21:57, 19. máj 2020
<ctype.h> | <limits.h> | <stdio.h> | <stdlib.h> | <math.h> | <string.h> | <time.h> |
---|---|---|---|---|---|---|
isalnum |
printf |
system |
Funkcia fgetc
knižnica | stdio.h |
popis | Načíta znak zo súboru. |
Úplný funkčný prototyp:
int fgetc ( FILE * stream )
Podrobný popis funkcie
Načíta jeden znak zo súboru a posunie v súbore kurzor o jeden znak. Táto funkcia je rovnaká ako funkcia getc, až na to, že funkcia getc môže byť použitá ako makro a funkcia fgetc nie.
Parametre
- stream
- Smerník na FILE (súbor), z ktorého chceme načítať jeden znak.
Návratová hodnota
Funkcia vráti načítaný znak, alebo EOF, alebo chybu.
Príklad
Príklad zobrazuje, ako otvoriť súbor na čítanie a zapisovanie a ako používať funkciu fgetc. V príklade sú použité aj funkcie fprintf, fclose, fopen a feof. Pred spustením príkladu si zmeňte umiestnenie súboru podľa seba.
1 #include <stdio.h>
2 #include <stdlib.h>
3
4 int main() {
5 FILE * subor;
6 //otvorenie súboru pre zapisovanie (sem zadajte vlastné umiestnenie súboru)
7 subor = fopen("test.txt", "w+");
8
9 if (subor) { //overenie, či je súbor naozaj otvorený
10 fprintf(subor, "Ahoj svet!"); //zapisovanie do súboru
11 printf("Text zapisany do suboru.\n");
12 fclose(subor); //zatvorenie súboru
13 } else {
14 printf("Subor sa nepodarilo otvorit.\n");
15 }
16 //otvorenie súboru pre čítanie (sem zadajte vlastné umiestnenie súboru)
17 subor = fopen("test.txt", "r");
18
19 if (subor) { //overenie, či je súbor naozaj otvorený
20 printf("Text zo suboru: ");
21 char c;
22 while (!feof(subor)) { //opakuje, pokiaľ nenájde koniec súboru
23 c = fgetc(subor); //načítanie jedného znaku zo súboru
24 printf("%c", c); //vypísanie načítaného znaku na obrazovku
25 }
26 fclose(subor); //zatvorenie súboru
27 }
28 else {
29 printf("Subor sa nepodarilo otvorit.\n");
30 }
31 return(0);
32 }
Výstup:
Text zapisany do suboru. Text zo suboru: Ahoj svet!