Tag: c files programs

  • C Program to Read the First Line From a File

    In this tutorial, we will write a program to read the first line of the file in C. Before that, you should have knowledge on the following topic in C.

    To read from a text file in C, you will need to open a file stream using the fopen() function. And then check if the file exists or not. Then read the file.


    C Programming Read First line of File

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
      char c[1000];
      FILE * fptr;
    
      fptr = fopen("test.txt", "r");
    
      if (fptr == NULL)
      {
        printf("Error occured!");
        exit(1);
      }
    
      // read the first line
      fscanf(fptr, "%[^\n]", c);
      printf("First line of the file:\n%s", c);
    
      fclose(fptr);
      return 0;
    }

    Output:

    The file test.txt contains the following information.

    This is simple2code.com.
    This is a programming website to learn programming languages.

    After successful execution of the above program, the following output will be displayed.

    First line of the file:
    This is simple2code.com.


  • C Program to Count the Number of Characters Words and Lines in a file

    In this tutorial, we will write a C program to count the number of characters words, and lines in a text file. Before that, you may go through the following C topics.

    Explanation: The program takes the user input for the file name or file path (if not present in the same directory). Then computes using while loop.

    There are three integer variables in a program whose values are incremented by one whenever the condition is fulfilled. When the file reaches the end of the file, the execution control comes out of the loop and finally displays the counted result.


    C Program to count Number of Characters Words and Lines in a file

    Source code: Write a C program to count characters, words, and lines in a text file.

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
       FILE * file;
       char fileName[100], ch;
       int characters, words, lines;
    
       printf("Enter the file name: ");
       scanf("%s", fileName);
    
       // open file in read mode
       file = fopen(fileName, "r");
       if (file == NULL)
       {
          printf("Unable to open the file");
          exit(EXIT_FAILURE);
       }
    
       characters = words = lines = 0;
       while ((ch = fgetc(file)) != EOF)
       {
          characters++;
    
          //check for lines
          if (ch == '\n' || ch == '\0')
             lines++;
    
          //check for words
          if (ch == ' ' || ch == '\t' || ch == '\n' || ch == '\0')
             words++;
       }
    
       if (characters > 0)
       {
          words++;
          lines++;
       }
    
       //Display
       printf("\nTotal Number of characters: %d", characters);
       printf("\nTotal Number of words:  %d", words);
       printf("\nTotal Number of lines:  %d", lines);
    
       fclose(file);
    
       return 0;
    }

    Output:

    calculate the characters words and lines in C

    The content inside the test.txt:

    Hello!
    This is simple2code.com
    You can learn coding tutorials and programs from the beginning.


  • C Program to Count the Number of Lines in a File

    In this tutorial, we will write a C Program to find the number of lines in a text file. Before that, you may go through the following C topics.

    Explanation: The program asks the user to enter the file name or file path (if not present in the same directory). If the file is not present then it will throw a message else it will continue the counting process.

    First, the file checks if the starting is EOF or not, if not then the count will increase to 1 (if this part is not checked then the count will show one less result than the actual number of lines present), and then the counting begins using a while loop. And it increases the count when a newline is found every time inside a file.


    C Program to Count the Number of Lines in a File

    Source code: Count the number of lines in a file in C

    #include <stdio.h>
    #define FILE_NAME_SIZE 100
    
    int main()
    {
       FILE * fptr;
       int count = 0;
       char fileName[FILE_NAME_SIZE], ch;
    
       printf("Enter the name of the file: ");
       scanf("%s", fileName);
    
       // Opening the file and check for its existence
       fptr = fopen(fileName, "r");
       if (fptr == NULL)
       {
          printf("Could not open file.");
          return 0;
       }
    
       ch = getc(fptr);
       //if file is not empty then count the first line as 1
       if (ch != EOF)
          count++;
    
       // extracting the lines
       while (ch != EOF)
       {
          // if character id newline
          if (ch == '\n' || ch == '\0')
             count = count + 1;
    
          ch = getc(fptr);
       }
    
       fclose(fptr);
       printf("Number of line present in %s: %d ", fileName, count);
    
       return 0;
    }

    Output:

    read lines in c

    The content inside the test.txt:

    Hello!
    This is simple2code.com
    You can learn coding tutorials and programs from the beginning.


  • C Program to Merge Two Files

    In this tutorial, we will write a C Program to merge the contents of two files into a third file. Before that, you may go through the following C topics.

    Explanation: The program will ask for the two names of the file from where the content is copied and then ask for the third file name where both the files are concatenated and copied there. If the third file is not present then the program will automatically create a file with the entered name.

    Lastly, check the third file which will be present in the same directory as the source code.


    C Program to Merge Two Files

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
       FILE *fp1, *fp2, *fp3;
    
       char ch, file1[20], file2[20], file3[20];
    
       printf("Enter the first file name: ");
       gets(file1);
    
       printf("Enter the second file name: ");
       gets(file2);
    
       printf("Enter the file name where you want ot store: ");
       gets(file3);
    
       fp1 = fopen(file1, "r");
       fp2 = fopen(file2, "r");
    
       if (fp1 == NULL || fp2 == NULL)
       {
          perror("Error ");
          exit(0);
       }
    
       // Opening in write mode
       fp3 = fopen(file3, "w");
    
       if (fp3 == NULL)
       {
          perror("Error ");
          exit(0);
       }
    
       while ((ch = fgetc(fp1)) != EOF)
          fputc(ch, fp3);
    
       while ((ch = fgetc(fp2)) != EOF)
          fputc(ch, fp3);
    
       printf("\n%s and %s are merges to %s successfully.\n", file1, file2, file3);
    
       fclose(fp1);
       fclose(fp2);
       fclose(fp3);
    
       return 0;
    }

    Output:

    copy file in C

    Before and after the execution, all the files will look like following:

    Before:
    file1.txt:
    Hello World!
    file2.txt
    This is simple2code.com.

    After:
    file3.txt
    Hello World!
    This is simple2code.com.

    The above program to merge the content of two files in C is successfully tested in a machine.


  • C Program to Append Data to a Text file

    In this tutorial, we will write a C program to append data into a file. Before that, you may go through the following C topics.

    Appending data means adding an additional data at the end of the file such as:

    test.txt: Hello!
    New Data: This is simple2code.com

    After appending the new data to the file, it will look something like this,
    test.txt:
    Hello!
    This is simple2code.com


    C Program to append data to a text file

    Explanation: We will first open the file, if the file does not exist then the program will automatically create a file for you. Then the program will ask for the data to enter.

    If there is some data already present in the file then the newly entered data will be added at the end of the file.

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
       FILE * fp;
       char data[1000];
    
       fp = fopen("test.txt", "a");
    
       printf("Enter data to append: ");
       fgets(data, 1000, stdin);
    
       fputs(data, fp);
    
       printf("File appended successfully");
       fclose(fp);
    
       // Again open the file to display
       fp = fopen("test.txt", "r");
    
       printf("\nNew Content:\n");
       char ch;
       while ((ch = fgetc(fp)) != EOF)
       {
          printf("%c", ch);
       }
    
       fclose(fp);
    
       return 0;
    }

    Output: After the successful execution of the program for appending data into a file in C, we get,

    append file in C

    Before and after the execution of the program, the data present in the test.txt:

    Before:
    Hello!

    After:
    Hello!
    This is simple2code.com


  • C Program to Copy Contents of one file to another

    This is a file tutorial where we will write a program to copy the content from one file to another file in C. Before that, you may go through the following C topics.

    Before the program:

    Before executing a program you need to create or have a file in the same directory as the source code. If the file from where the program needs to be copied does not exist then the program will show an error message.

    So let us create a file with the name “test.txt” and has the following content in it.

    Hi! Everyone…
    This is simple2code.com


    Copy content from one file to another in C program

    The program will ask for two file names, one from where the content should be read and to where the content should be written.

    #include <stdio.h>
    #include <stdlib.h>
    
    int main()
    {
       FILE *fptr1, *fptr2;
       char filename[50], ch;
    
       printf("Enter the file name to be read: ");
       scanf("%s", filename);
    
       fptr1 = fopen(filename, "r");
       if (fptr1 == NULL)
       {
          printf("File does not exists!");
          exit(0);
       }
    
       printf("Enter the file name where to be copied: ");
       scanf("%s", filename);
    
       fptr2 = fopen(filename, "w");
       if (fptr2 == NULL)
       {
          printf("Cannot open file %s \n", filename);
          exit(0);
       }
    
       ch = fgetc(fptr1);
       while (ch != EOF)
       {
          fputc(ch, fptr2);
          ch = fgetc(fptr1);
       }
    
       printf("\nContent is copied to %s successfully.", filename);
    
       fclose(fptr1);
       fclose(fptr2);
    
       return 0;
    }

    Output:

    copy content from one file to another in C

    Note: If the file to where the content should be copied is not created before the program then the program will automatically create that file for you.

    After successful execution of the program, check the copy.txt file, you will find the same content present in the test.txt file.


  • C Program to create a File & write Data in it

    This is a file tutorial where we will write a C program to create a file and write into it. Before that, you may go through the following C topics.

    Explanation: The program is based on the file system in C. The program opens the file system in writing mode, hence the “w”. If the file is not present with the name provided then the program will create a file on the same directory.

    The program will check if the file is Null or not. If not then, it will ask the user to enter data which later will be inserted into the file. Let us go through the program.

    Program to write into a file in C

    #include <stdio.h>
    #include <conio.h>
    
    void main()
    {
       FILE * fptr;
       char data[100];
    
       fptr = fopen("test.txt", "w");
    
       if (fptr == NULL)
       {
          printf("Error occured!");
          return;
       }
    
       printf("Enter the data: \n");
       fgets(data, 100, stdin);
    
       fputs(data, fptr);	//writing to a file
    
       printf("\nFile created and saved successfully.");
    
       fclose(fptr);
    }

    Output:

    write a file in C

    After successful execution of the program, a file named “test.txt” will be created (if not already created) in the same directory where you have stored the source code file. Open that file and you will see the data that you wrote on the program will be present there in the following way.

    This is simple2code.com