C Program To Merge Two Files Into a Single File
In this tutorial, we are going to see how to write a C program to merge two files into a single file and store their contents in another file. The files to be merged are opened in “read” mode and the file containing the two files is opened in “write” mode.
C Program To Merge Two Files Into a Single File
#include <stdio.h> #include <stdlib.h> int main() { // Open the two files to be merged FILE *f1 = fopen("file1.txt", "r"); FILE *f2 = fopen("file2.txt", "r"); // Open file to store the result FILE *f3 = fopen("file3.txt", "w"); char c; if (f1 == NULL || f2 == NULL || f3 == NULL) { puts("Cannot open files"); exit(EXIT_FAILURE); } // Copy the content of the first file to file3.txt while ((c = fgetc(f1)) != EOF) fputc(c, f3); // Copy the content of the second file to file3.txt while ((c = fgetc(f2)) != EOF) fputc(c, f3); printf("The two files are now merged in file3.txt"); fclose(f1); fclose(f2); fclose(f3); return 0; }
Output:
The two files are now merged in file3.txt