1 / 16

Files Operations

Files Operations. Introduction. Almost all of the program developed before this is interactive In interactive environment, input is via keyboard and output is via screen/monitor

holmes-soto
Download Presentation

Files Operations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Files Operations DKT121: Fundamental of Computer Programming

  2. Introduction • Almost all of the program developed before this is interactive • In interactive environment, input is via keyboard and output is via screen/monitor • This type of processing is not suitable if it involves huge amount of input or output to be entered or be displayed on the screen at one time • Therefore, file processing can solve the problem mentioned DKT121: Fundamental of Computer Programming

  3. File Declaration • To implement file processing in C program, need to #include <stdio.h> FILE *in_file; FILE *out_file; • in_file and out_file are known as internal file name DKT121: Fundamental of Computer Programming

  4. Opening File and fopen function • Each file must be opened before it is processed • While opening the file, external file name need to be related to the internal file name using fopen function. • Format: internal_filename =fopen(external_filename, mode); • Internal file name is the name that the C system uses to identify a file among others that a program might process • External file name is the name given at “save file as” outside the program e.g. “student.dat”, “student.out” etc • Mode is used to open file DKT121: Fundamental of Computer Programming

  5. File Mode • Basics mode are: • “r” : open file to read • “w” : open file to write • “a” : append data to the end of an already existing file • “r+” : open and create file to update, i.e. read and write; did not overwrite previous output • “w+” :open and create file for update; overwrite • “a+” : append; open or create file for update DKT121: Fundamental of Computer Programming

  6. Opening File and fopen function-example FILE *in_file; FILE *out_file; in_file = fopen(“student.dat”, “r”); out_file = fopen(“student.out”, “w”); DKT121: Fundamental of Computer Programming

  7. File Open Verification • There is a possibility opening file fails. • Maybe the particular file does not exist • Therefore need to check or verify whether the file is successfully opened • If file fails to open, need to stop the program, use exit(-1); if (in_file == NULL) { printf(“File fails to open\n”); exit(-1); } DKT121: Fundamental of Computer Programming

  8. File Open Verification-cont • You can also combine open file and file verification if ((in_file = fopen(“student.dat”, “r”)) == NULL) { printf(“File fails to open\n”); exit(-1); } DKT121: Fundamental of Computer Programming

  9. Closing File and fclose function • Each opened file need to be closed • Format: fclose(internal_filename); e.g fclose(in_file); fclose(out_file); DKT121: Fundamental of Computer Programming

  10. Check for End-of-File and the feof function • Usually you don’t know how many data you want to read from file • Therefore, need to check whether you have reach end of file • Format: feof(internal_filename) DKT121: Fundamental of Computer Programming

  11. Check for End-of-File and the feof function-example FILE *in_file; in_file = fopen(“student.dat”, “r”); if(in_file == NULL) { printf(“Error opening file\n”); exit(-1); } while(! feof(in_file)) { //stmt to process data } fclose(in_file); DKT121: Fundamental of Computer Programming

  12. Reading Data from Text Files • Format • fscanf(internal file name, format control string, input list); fscanf(in_file, “%d”, &marks); • fgetc(internal file name); ch = fgetc(in_file); • fgets(string variable, size, internal file name); fgets(name, 10, in_file); DKT121: Fundamental of Computer Programming

  13. Writing Data to Text File • Format • fprintf(internal file name, format control string, output list); fprintf(out_file, “%d”, marks); • fputc(character expression,internal file name); fputc(ch, out_file); fputc(“4”, out_file); • fputs(string expression, internal file name); fputs(name, out_file); fputs(“makan”, out_file); DKT121: Fundamental of Computer Programming

  14. Sample Program while(!feof(in_file)) { fscanf(in_file,"%d",&marks); ++count; total = total + marks; fprintf(out_file, " %d ",marks); } avg = total /count; fprintf(out_file, "\n%.2f\n", avg); fclose(in_file); fclose(out_file); return 0; }//main #include <stdio.h> #include <stdlib.h> int main(void) { FILE *in_file; FILE *out_file; int marks, total=0, count = 0; float avg; in_file = fopen("student.dat", "r"); out_file= fopen("student.out", "w"); if(in_file == NULL) { printf("Error opening file\n"); exit(-1); } DKT121: Fundamental of Computer Programming

  15. Sample input file and output file 50 60 70 80 90 44 55 66 77 88 24 56 79 50 77 student.dat student.out 50 60 70 80 90 44 55 66 77 88 24 56 79 50 77 64.00 DKT121: Fundamental of Computer Programming

  16. End Files Operation Q & A! DKT121: Fundamental of Computer Programming

More Related