File Handling in C
File Handling is used to open, read, write, search and close file. C files I/O functions handles data on secondary storage device. File handling function: There are varioushandling functions in C.
Function | Operation |
fopen() | It is used to create a file. |
fclose() | It is used to create close an existing file. |
getc() | It is used to read a character from a file. |
putc() | It is used to write a character in file. |
fprintf() | It is used to write set of data in file. |
fscanf() | It is used to read set of data from file. |
getw() | It is used to read an integer from a file |
putw() | It is used to write an integer in file. |
C fopen() function
The fopen() function is used to open a file.The given syntax of file opening is.
Syntax
FILE *fopen( const char * filePath, const char * mode );Let us consider an example
#include<stdio.h> int main() { FILE *fp; fp = fopen("fileName.txt","w"); return 0; }Here is filePath declare a variable as a pointer to the data type FILE. There are different type of modes that help us to access the file in the fopen() function.
Mode | Description |
r | It is used to open a text file in read mode. |
W | It is used to open a text file in write mode. |
a | It is used to open a text file in append mode. |
r+ | It is used open a text file in read and write mode. |
w+ | It is used open a text file in read and write mode. |
a+ | It is used open a text file in read and write mode. |
rb | It is used open a binary file in read mode. |
wb | It is used open a binary file in write mode. |
ab | It is used open a binary file in append mode. |
rb+ | It is used open a binary file in read and write mode. |
wb+ | It is used open a binary file in read and write mode. |
ab+ | It is used open a binary file in read and write mode. |
C fclose() function:
The fclose() function is used to close a file .
Following is the syntax of fclose() function
Syntax:
char fclose( FILE *fp);Example
#include<stdio.h> int main(){ FILE *fp; fp = fopen("fileName.txt","w"); fprintf(fp, "%s", "Hello we are learning C langauge from TutorialAndExample .com"); fclose(fp); return 0; }
- The above example will call the < filename> name.
- The wis used to open for writing, and if the file does not exist then new file will be created.
- The fprintf function writes text on the file.
- The fclosefunction closed the file and reassesses the memory stream.
int getc( FILE * stream );Example
#include<stdio.h> int main(){ FILE *fp = fopen("fileName.txt", "r"); int ch = getc(fp); while (ch != EOF){ /* To display the contents of the file on the screen */ putchar(ch); ch = getc(fp); } if (feof(fp)) printf("\n Reached the end of file."); else printf("\n Something gone wrong."); fclose(fp); getchar(); return 0; }Cfputc() function In C language, fputc() function is used to write a character to the file. Syntax:
int fputc( int c, FILE * stream );
#include <stdio.h> int main(){ FILE *fp; /* file open */ fp = fopen("myfilee.txt", "w"); /* writing single character into file */ fputc('a',fp); fclose(fp); }C fprintf()function: The C printf() function is used to write the characters into file. Syntax:
int fprintf(FILE *stream, const char *format [, argument, ...])Example
#include <stdio.h> main(){ FILE *fp; fp = fopen("myfilee.txt", "w"); fprintf(fp, "Helloworld file by fprintf...\n"); fclose(fp); }C fscanf()function: The C fscanf() is used to read the characters from file. It reads a word from the file and returns EOF at the end of file. Syntax:
int fscanf(FILE *stream, const char *format [, argument, ...])Example
#include <stdio.h> int main(){ FILE *fp; char buff[255]; fp = fopen("myfilee.txt", "r"); while(fscanf(fp, "%s", buff)!=EOF){ printf("%s ", buff ); } fclose(fp); }C fputs() function C fputs() function is used to write a line of characters into file and return outputs string to a stream. Syntax:
int fputs(const char *s, FILE *stream)Example
#include<stdio.h> int main(){ FILE *fp; fp=fopen("myfilee.txt","w"); fputs("Hello You are Good Programmer .",fp); fclose(fp); return 0; }C fgets() function The fgets() functionis used to read a line of character from file and get string from a stream. Syntax: char* fgets(char *s, int n, FILE *stream) Example
#includeOutput :int main(){ FILE *fp; char text[200]; fp=fopen("myfilee.txt","r"); printf("%s",fgets(text,100,fp)); fclose(fp); return 0; }