w3resource

C Exercises: Read an existing file

C File Handling : Exercise-2 with Solution

Write a program in C to read an existing file.

Sample Solution:

C Code:

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

void main()
{
	FILE *fptr;
	char fname[20];
	char str;
    printf("\n\n Read an existing file :\n");
	printf("------------------------------\n"); 
	printf(" Input the filename to be opened : ");
	scanf("%s",fname);
	fptr = fopen (fname, "r");  
	if (fptr == NULL)
	{
		printf(" File does not exist or cannot be opened.\n");
		exit(0);
	}
	printf("\n The content of the file %s is  :\n",fname);
	str = fgetc(fptr);
	while (str != EOF)
		{
			printf ("%c", str);
			str = fgetc(fptr);
		}
	fclose(fptr);
    printf("\n\n");
}

Sample Output:

 Read and existing file :                                                                                     
------------------------------                                                                                
 Input the filename to be opened : test.txt                                                                   
                                                                                                              
 The content of the file test.txt is  :                                                                       
This is the content of the file test.txt 

Flowchart:

Flowchart: Read an existing file

C Programming Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a program in C to create and store information in a text file.
Next: Write a program in C to write multiple lines in a text file.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



C Programming: Tips of the Day

What is the size of an enum in c?

An enum is only guaranteed to be large enough to hold int values. The compiler is free to choose the actual type used based on the enumeration constants defined so it can choose a smaller type if it can represent the values you define. If you need enumeration constants that don't fit into an int you will need to use compiler-specific extensions to do so.

Ref : https://bit.ly/3ypg4k8