logo

C fprintf() e fscanf()


Scrittura del file: funzione fprintf()

La funzione fprintf() viene utilizzata per scrivere un set di caratteri nel file. Invia l'output formattato a un flusso.

Sintassi:

elenco delle freccette
 int fprintf(FILE *stream, const char *format [, argument, ...]) 

Esempio:

 #include main(){ FILE *fp; fp = fopen('file.txt', 'w');//opening file fprintf(fp, 'Hello file by fprintf...
');//writing data into file fclose(fp);//closing file } 

Lettura file: funzione fscanf()

La funzione fscanf() viene utilizzata per leggere un set di caratteri dal file. Legge una parola dal file e restituisce EOF alla fine del file.

Sintassi:

 int fscanf(FILE *stream, const char *format [, argument, ...]) 

Esempio:

 #include main(){ FILE *fp; char buff[255];//creating char array to store data of file fp = fopen('file.txt', 'r'); while(fscanf(fp, '%s', buff)!=EOF){ printf('%s ', buff ); } fclose(fp); } 

Produzione:

 Hello file by fprintf... 

Esempio di file C: memorizzazione delle informazioni sui dipendenti

Vediamo un esempio di gestione dei file per archiviare le informazioni sui dipendenti inserite dall'utente dalla console. Memorizzeremo l'ID, il nome e lo stipendio del dipendente.

 #include void main() { FILE *fptr; int id; char name[30]; float salary; fptr = fopen('emp.txt', 'w+');/* open for writing */ if (fptr == NULL) { printf('File does not exists 
'); return; } printf('Enter the id
'); scanf('%d', &id); fprintf(fptr, 'Id= %d
', id); printf('Enter the name 
'); scanf('%s', name); fprintf(fptr, 'Name= %s
', name); printf('Enter the salary
'); scanf('%f', &salary); fprintf(fptr, 'Salary= %.2f
', salary); fclose(fptr); }

Produzione:

css in bilico
 Enter the id 1 Enter the name sonoo Enter the salary 120000 

Ora apri il file dalla directory corrente. Per il sistema operativo Windows, vai alla directory TCin, vedrai il file emp.txt. Avrà le seguenti informazioni.

emp.txt

 Id= 1 Name= sonoo Salary= 120000