logo

C fprintf() ja fscanf()


Kirjoitetaan tiedostoa: fprintf()-funktio

Fprintf()-funktiota käytetään merkkijoukon kirjoittamiseen tiedostoon. Se lähettää alustetun lähdön streamiin.

Syntaksi:

maailman parhaita autoja
 int fprintf(FILE *stream, const char *format [, argument, ...]) 

Esimerkki:

 #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 } 

Lukee tiedostoa: fscanf()-funktio

Fscanf()-funktiota käytetään lukemaan merkkejä tiedostosta. Se lukee sanan tiedostosta ja palauttaa EOF:n tiedoston loppuun.

Syntaksi:

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

Esimerkki:

 #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); } 

Lähtö:

 Hello file by fprintf... 

C Tiedosto Esimerkki: Työntekijätietojen tallentaminen

Katsotaanpa esimerkki tiedostojen käsittelystä työntekijätietojen tallentamiseksi käyttäjän konsolista syöttämien tietojen mukaan. Säilytämme työntekijän henkilötunnuksen, nimen ja palkan.

 #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); }

Lähtö:

diana ankudinova
 Enter the id 1 Enter the name sonoo Enter the salary 120000 

Avaa nyt tiedosto nykyisestä hakemistosta. Jos käytät Windows-käyttöjärjestelmää, siirry hakemistoon TCin, näet emp.txt-tiedoston. Siinä on seuraavat tiedot.

emp.txt

 Id= 1 Name= sonoo Salary= 120000