Read First Line of a File in C

C File management

A File can be used to shop a large book of persistent data. Similar many other languages 'C' provides post-obit file direction functions,

  1. Creation of a file
  2. Opening a file
  3. Reading a file
  4. Writing to a file
  5. Closing a file

Following are the most important file direction functions available in 'C,'

function purpose
fopen () Creating a file or opening an existing file
fclose () Closing a file
fprintf () Writing a block of information to a file
fscanf () Reading a block data from a file
getc () Reads a single character from a file
putc () Writes a unmarried character to a file
getw () Reads an integer from a file
putw () Writing an integer to a file
fseek () Sets the position of a file pointer to a specified location
ftell () Returns the current position of a file pointer
rewind () Sets the file pointer at the kickoff of a file

In this tutorial, you will larn-

  • How to Create a File
  • How to Close a file:
  • Writing to a File
  • fputc() Function:
  • fputs () Function:
  • fprintf()Function:
  • Reading data from a File
  • Interactive File Read and Write with getc and putc

How to Create a File

Whenever you desire to piece of work with a file, the showtime step is to create a file. A file is nothing but space in a memory where information is stored.

To create a file in a 'C' programme following syntax is used,

FILE *fp; fp = fopen ("file_name", "way");          

In the above syntax, the file is a data structure which is defined in the standard library.

fopen is a standard function which is used to open up a file.

  • If the file is not nowadays on the system, then it is created and then opened.
  • If a file is already nowadays on the system, then it is direct opened using this function.

fp is a file pointer which points to the type file.

Whenever yous open up or create a file, you have to specify what you are going to do with the file. A file in 'C' programming can be created or opened for reading/writing purposes. A mode is used to specify whether you want to open a file for whatever of the below-given purposes. Following are the different types of modes in 'C' programming which tin exist used while working with a file.

File Style Description
r Open up a file for reading. If a file is in reading mode, then no information is deleted if a file is already present on a system.
w Open a file for writing. If a file is in writing fashion, and then a new file is created if a file doesn't be at all. If a file is already present on a arrangement, then all the information inside the file is truncated, and information technology is opened for writing purposes.
a Open a file in
suspend manner. If a file is in suspend mode, and then the file is opened. The content within the file doesn't change.
r+ open for reading and writing from outset
w+ open for reading and writing, overwriting a file
a+ open for reading and writing, appending to file

In the given syntax, the filename and the mode are specified as strings hence they must e'er be enclosed within double quotes.

Instance:

#include <stdio.h> int main() { FILE *fp; fp  = fopen ("data.txt", "due west"); }          

Output:

File is created in the same folder where you have saved your lawmaking.

You tin can specify the path where you want to create your file

#include <stdio.h> int main() { FILE *fp; fp  = fopen ("D://information.txt", "w"); }

How to Close a file

One should always close a file whenever the operations on file are over. Information technology means the contents and links to the file are terminated. This prevents adventitious damage to the file.

'C' provides the fclose function to perform file closing operation. The syntax of fclose is as follows,

fclose (file_pointer);          

Example:

FILE *fp; fp  = fopen ("data.txt", "r"); fclose (fp);          

The fclose part takes a file arrow equally an argument. The file associated with the file pointer is then closed with the help of fclose function. It returns 0 if close was successful and EOF (end of file) if there is an error has occurred while file closing.

After closing the file, the same file arrow can also be used with other files.

In 'C' programming, files are automatically shut when the program is terminated. Closing a file manually by writing fclose part is a skillful programming practice.

Writing to a File

In C, when you write to a file, newline characters '\n' must exist explicitly added.

The stdio library offers the necessary functions to write to a file:

  • fputc(char, file_pointer): It writes a character to the file pointed to by file_pointer.
  • fputs(str, file_pointer): It writes a string to the file pointed to past file_pointer.
  • fprintf(file_pointer, str, variable_lists): Information technology prints a string to the file pointed to by file_pointer. The cord can optionally include format specifiers and a listing of variables variable_lists.

The program below shows how to perform writing to a file:

fputc() Office:

#include <stdio.h> int main() {         int i;         FILE * fptr;         char fn[l];         char str[] = "Guru99 Rocks\n";         fptr = fopen("fputc_test.txt", "w"); // "w" defines "writing way"         for (i = 0; str[i] != '\northward'; i++) {             /* write to file using fputc() function */             fputc(str[i], fptr);         }         fclose(fptr);         return 0;     }

Output:

The to a higher place program writes a single grapheme into the fputc_test.txt file until information technology reaches the next line symbol "\n" which indicates that the sentence was successfully written. The procedure is to have each character of the assortment and write it into the file.

  1. In the above programme, we have created and opened a file called fputc_test.txt in a write mode and declare our cord which will be written into the file.
  2. Nosotros do a grapheme by grapheme write functioning using for loop and put each character in our file until the "\n" character is encountered and then the file is closed using the fclose function.

fputs () Role:

#include <stdio.h> int main() {         FILE * fp;         fp = fopen("fputs_test.txt", "w+");         fputs("This is Guru99 Tutorial on fputs,", fp);         fputs("We don't need to use for loop\n", fp);         fputs("Easier than fputc function\northward", fp);         fclose(fp);         return (0);     }

OUTPUT:

  1. In the above program, we have created and opened a file chosen fputs_test.txt in a write mode.
  2. After we practise a write operation using fputs() function by writing three different strings
  3. Then the file is closed using the fclose function.

fprintf()Function:

#include <stdio.h>     int main() {         FILE *fptr;         fptr = fopen("fprintf_test.txt", "w"); // "w" defines "writing mode"         /* write to file */         fprintf(fptr, "Learning C with Guru99\n");         fclose(fptr);         return 0;     }

OUTPUT:

  1. In the higher up program we accept created and opened a file called fprintf_test.txt in a write mode.
  2. Afterward a write performance is performed using fprintf() function by writing a cord, then the file is closed using the fclose function.

Reading information from a File

There are three dissimilar functions dedicated to reading information from a file

  • fgetc(file_pointer): It returns the next character from the file pointed to by the file pointer. When the end of the file has been reached, the EOF is sent back.
  • fgets(buffer, n, file_pointer): It reads due north-1 characters from the file and stores the string in a buffer in which the Naught graphic symbol '\0' is appended as the last character.
  • fscanf(file_pointer, conversion_specifiers, variable_adresses): Information technology is used to parse and clarify data. Information technology reads characters from the file and assigns the input to a list of variable pointers variable_adresses using conversion specifiers. Keep in mind that as with scanf, fscanf stops reading a string when infinite or newline is encountered.

The following program demonstrates reading from fputs_test.txt file using fgets(),fscanf() and fgetc () functions respectively :

#include <stdio.h> int main() {         FILE * file_pointer;         char buffer[30], c;          file_pointer = fopen("fprintf_test.txt", "r");         printf("----read a line----\northward");         fgets(buffer, fifty, file_pointer);         printf("%s\n", buffer);          printf("----read and parse data----\n");         file_pointer = fopen("fprintf_test.txt", "r"); //reset the pointer         char str1[x], str2[2], str3[20], str4[2];         fscanf(file_pointer, "%southward %s %s %due south", str1, str2, str3, str4);         printf("Read String1 |%s|\n", str1);         printf("Read String2 |%s|\n", str2);         printf("Read String3 |%s|\north", str3);         printf("Read String4 |%s|\n", str4);          printf("----read the entire file----\n");          file_pointer = fopen("fprintf_test.txt", "r"); //reset the pointer         while ((c = getc(file_pointer)) != EOF) printf("%c", c);          fclose(file_pointer);         return 0;     }

Result:

----read a line---- Learning C with Guru99  ----read and parse data---- Read String1 |Learning| Read String2 |C| Read String3 |with| Read String4 |Guru99| ----read the unabridged file---- Learning C with Guru99

  1. In the in a higher place program, we take opened the file called "fprintf_test.txt" which was previously written using fprintf() function, and it contains "Learning C with Guru99" string. We read information technology using the fgets() part which reads line by line where the buffer size must exist enough to handle the unabridged line.
  2. Nosotros reopen the file to reset the pointer file to point at the kickoff of the file. Create diverse strings variables to handle each word separately. Print the variables to see their contents. The fscanf() is mainly used to extract and parse data from a file.
  3. Reopen the file to reset the pointer file to signal at the showtime of the file. Read data and impress information technology from the file character by character using getc() function until the EOF argument is encountered
  4. After performing a reading performance file using unlike variants, we again closed the file using the fclose part.

Interactive File Read and Write with getc and putc

These are the simplest file operations. Getc stands for become character, and putc stands for put character. These 2 functions are used to handle but a single graphic symbol at a fourth dimension.

Following program demonstrates the file handling functions in 'C' programming:

#include <stdio.h> int main() {         FILE * fp;         char c;         printf("File Handling\due north");         //open a file         fp = fopen("demo.txt", "w");         //writing operation         while ((c = getchar()) != EOF) {             putc(c, fp);         }         //close file         fclose(fp);         printf("Data Entered:\due north");         //reading         fp = fopen("demo.txt", "r");         while ((c = getc(fp)) != EOF) {             printf("%c", c);         }         fclose(fp);         return 0;     }          

Output:

  1. In the above plan nosotros have created and opened a file chosen demo in a write fashion.
  2. After a write functioning is performed, and so the file is closed using the fclose office.
  3. We take again opened a file which now contains data in a reading mode. A while loop will execute until the eof is plant. One time the end of file is found the operation will be terminated and data will be displayed using printf office.
  4. After performing a reading operation file is again closed using the fclose function.

Summary

  • A file is a space in a retentivity where data is stored.
  • 'C' programming provides various functions to deal with a file.
  • A mechanism of manipulating with the files is called every bit file direction.
  • A file must be opened before performing operations on information technology.
  • A file can be opened in a read, write or an append mode.
  • Getc and putc functions are used to read and write a single character.
  • The part fscanf() permits to read and parse data from a file
  • We can read (using the getc function) an entire file past looping to cover all the file until the EOF is encountered
  • Nosotros can write to a file after creating its name, by using the function fprintf() and information technology must have the newline grapheme at the cease of the string text.

leeuted1963.blogspot.com

Source: https://www.guru99.com/c-file-input-output.html

0 Response to "Read First Line of a File in C"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel