C Program to Read & Display Content from File Using Character I/O Function

Question: write a program in C to read all contents from filename “tale.txt” using character I/O functions. File "tale.txt" looks like:

A Tale of Two Cities by Charles Dickens
-----------------------------
Starting Paragraph
-----------------------------
It was the best of times, 
it was the worst of times, 
it was the age of wisdom, 
it was the age of foolishness, 
it was the epoch of belief, 
it was the epoch of incredulity, 
it was the season of Light, 
it was the season of Darkness, 
it was the spring of hope, 
it was the winter of despair, 
we had everything before us, 
we had nothing before us, 
we were all going direct to Heaven, 
we were all going direct the other way - in short, 
the period was so far like the present period, 
that some of its noisiest authorities insisted on its being received, 
for good or for evil, in the superlative degree of comparison only.

C Source Code: File Read Using Character I/O


#include<stdio.h>
#include<stdlib.h>

int main()
{
 FILE *fptr;
 char ch;

 /* Opening file in read mode */
 fptr = fopen("tale.txt","r");
 if(fptr==NULL)
 {
  printf("Can't open file. Make sure file exits.\n");
  exit(1);
 }
 
 do
 {
  ch = fgetc(fptr);

  putchar(ch);

 }while(ch!=EOF);

 fclose(fptr);
 
 printf("\n\nProgram completed. Press any key to continue...");

 return 0;
}

Output

The output of the above program is:

A Tale of Two Cities by Charles Dickens
-----------------------------
Starting Paragraph
-----------------------------
It was the best of times, 
it was the worst of times, 
it was the age of wisdom, 
it was the age of foolishness, 
it was the epoch of belief, 
it was the epoch of incredulity, 
it was the season of Light, 
it was the season of Darkness, 
it was the spring of hope, 
it was the winter of despair, 
we had everything before us, 
we had nothing before us, 
we were all going direct to Heaven, 
we were all going direct the other way - in short, 
the period was so far like the present period, 
that some of its noisiest authorities insisted on its being received, 
for good or for evil, in the superlative degree of comparison only.

Program completed. Press any key to continue...