Reading Data From a File C# Separated by a Comma
C File management
A File tin can exist used to store a large volume of persistent information. Like many other languages 'C' provides following file management functions,
- Cosmos of a file
- Opening a file
- Reading a file
- Writing to a file
- Closing a file
Following are the well-nigh important file direction functions bachelor in 'C,'
function | purpose | |
---|---|---|
fopen () | Creating a file or opening an existing file | |
fclose () | Closing a file | |
fprintf () | Writing a block of data to a file | |
fscanf () | Reading a block information from a file | |
getc () | Reads a single character from a file | |
putc () | Writes a single 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 arrow | |
rewind () | Sets the file pointer at the beginning of a file |
In this tutorial, you will learn-
- How to Create a File
- How to Close a file:
- Writing to a File
- fputc() Function:
- fputs () Part:
- fprintf()Function:
- Reading information from a File
- Interactive File Read and Write with getc and putc
How to Create a File
Whenever you want to work with a file, the first step is to create a file. A file is nothing but space in a memory where data is stored.
To create a file in a 'C' programme following syntax is used,
FILE *fp; fp = fopen ("file_name", "mode");
In the to a higher place syntax, the file is a data structure which is defined in the standard library.
fopen is a standard function which is used to open a file.
- If the file is not present on the system, then it is created and then opened.
- If a file is already present on the organization, then it is directly opened using this function.
fp is a file pointer which points to the type file.
Whenever you open up or create a file, you lot accept to specify what you are going to do with the file. A file in 'C' programming tin be created or opened for reading/writing purposes. A mode is used to specify whether you desire to open up a file for whatsoever of the below-given purposes. Following are the different types of modes in 'C' programming which can be used while working with a file.
File Mode | Description |
---|---|
r | Open a file for reading. If a file is in reading mode, then no information is deleted if a file is already present on a organization. |
w | Open up a file for writing. If a file is in writing mode, and so a new file is created if a file doesn't exist at all. If a file is already nowadays on a arrangement, then all the information inside the file is truncated, and it is opened for writing purposes. |
a | Open a file in append mode. 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 start |
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 always exist enclosed within double quotes.
Example:
#include <stdio.h> int main() { FILE *fp; fp = fopen ("data.txt", "due west"); }
Output:
File is created in the aforementioned binder where you have saved your code.
Yous tin can specify the path where you want to create your file
#include <stdio.h> int chief() { FILE *fp; fp = fopen ("D://data.txt", "w"); }
How to Shut a file
One should always shut a file whenever the operations on file are over. It means the contents and links to the file are terminated. This prevents accidental damage to the file.
'C' provides the fclose function to perform file closing operation. The syntax of fclose is equally follows,
fclose (file_pointer);
Example:
FILE *fp; fp = fopen ("information.txt", "r"); fclose (fp);
The fclose function takes a file pointer every bit an argument. The file associated with the file pointer is then airtight with the help of fclose part. It returns 0 if shut was successful and EOF (finish of file) if there is an error has occurred while file endmost.
After endmost the file, the same file pointer can besides be used with other files.
In 'C' programming, files are automatically close when the program is terminated. Endmost a file manually by writing fclose function is a good programming exercise.
Writing to a File
In C, when you write to a file, newline characters '\due north' must be 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 by file_pointer.
- fprintf(file_pointer, str, variable_lists): It prints a string to the file pointed to by file_pointer. The string tin can optionally include format specifiers and a listing of variables variable_lists.
The program beneath shows how to perform writing to a file:
fputc() Function:
#include <stdio.h> int main() { int i; FILE * fptr; char fn[50]; char str[] = "Guru99 Rocks\n"; fptr = fopen("fputc_test.txt", "due west"); // "w" defines "writing mode" for (i = 0; str[i] != '\due north'; i++) { /* write to file using fputc() function */ fputc(str[i], fptr); } fclose(fptr); return 0; }
Output:
The above program writes a unmarried grapheme into the fputc_test.txt file until it reaches the next line symbol "\n" which indicates that the sentence was successfully written. The procedure is to take each character of the array and write it into the file.
- In the above plan, we have created and opened a file called fputc_test.txt in a write mode and declare our string which will be written into the file.
- Nosotros do a character by character write functioning using for loop and put each character in our file until the "\due north" graphic symbol is encountered then the file is closed using the fclose function.
fputs () Function:
#include <stdio.h> int principal() { FILE * fp; fp = fopen("fputs_test.txt", "w+"); fputs("This is Guru99 Tutorial on fputs,", fp); fputs("We don't demand to use for loop\n", fp); fputs("Easier than fputc role\n", fp); fclose(fp); return (0); }
OUTPUT:
- In the above programme, we have created and opened a file called fputs_test.txt in a write mode.
- After nosotros exercise a write operation using fputs() function past writing three unlike strings
- So the file is closed using the fclose office.
fprintf()Office:
#include <stdio.h> int main() { FILE *fptr; fptr = fopen("fprintf_test.txt", "w"); // "westward" defines "writing way" /* write to file */ fprintf(fptr, "Learning C with Guru99\n"); fclose(fptr); return 0; }
OUTPUT:
- In the above program we accept created and opened a file chosen fprintf_test.txt in a write fashion.
- Later a write operation is performed using fprintf() function by writing a string, and then the file is airtight using the fclose function.
Reading data from a File
There are iii dissimilar functions defended to reading data from a file
- fgetc(file_pointer): It returns the adjacent character from the file pointed to past the file pointer. When the end of the file has been reached, the EOF is sent back.
- fgets(buffer, n, file_pointer): It reads n-1 characters from the file and stores the cord in a buffer in which the Nix character '\0' is appended equally the last character.
- fscanf(file_pointer, conversion_specifiers, variable_adresses): It is used to parse and analyze information. It reads characters from the file and assigns the input to a list of variable pointers variable_adresses using conversion specifiers. Keep in heed that as with scanf, fscanf stops reading a string when space 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----\n"); fgets(buffer, 50, file_pointer); printf("%s\n", buffer); printf("----read and parse data----\n"); file_pointer = fopen("fprintf_test.txt", "r"); //reset the pointer char str1[10], str2[2], str3[20], str4[2]; fscanf(file_pointer, "%south %south %southward %s", str1, str2, str3, str4); printf("Read String1 |%south|\n", str1); printf("Read String2 |%s|\n", str2); printf("Read String3 |%s|\northward", str3); printf("Read String4 |%s|\n", str4); printf("----read the entire file----\north"); file_pointer = fopen("fprintf_test.txt", "r"); //reset the pointer while ((c = getc(file_pointer)) != EOF) printf("%c", c); fclose(file_pointer); return 0; }
Event:
----read a line---- Learning C with Guru99 ----read and parse information---- Read String1 |Learning| Read String2 |C| Read String3 |with| Read String4 |Guru99| ----read the unabridged file---- Learning C with Guru99
- In the higher up plan, nosotros have opened the file chosen "fprintf_test.txt" which was previously written using fprintf() function, and information technology contains "Learning C with Guru99" cord. Nosotros read it using the fgets() office which reads line by line where the buffer size must be enough to handle the entire line.
- Nosotros reopen the file to reset the arrow file to betoken at the commencement of the file. Create various 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.
- Reopen the file to reset the pointer file to point at the beginning of the file. Read data and print information technology from the file character by character using getc() function until the EOF statement is encountered
- After performing a reading operation file using different variants, we again closed the file using the fclose function.
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 grapheme. These two functions are used to handle but a single character at a fourth dimension.
Following plan demonstrates the file handling functions in 'C' programming:
#include <stdio.h> int master() { FILE * fp; char c; printf("File Handling\due north"); //open up a file fp = fopen("demo.txt", "westward"); //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); render 0; }
Output:
- In the above program we have created and opened a file called demo in a write way.
- After a write operation is performed, then the file is closed using the fclose function.
- We have again opened a file which now contains data in a reading mode. A while loop will execute until the eof is constitute. Once the end of file is found the operation will be terminated and data volition exist displayed using printf role.
- After performing a reading operation file is over again closed using the fclose role.
Summary
- A file is a space in a retention where data is stored.
- 'C' programming provides various functions to deal with a file.
- A mechanism of manipulating with the files is called as file management.
- A file must be opened before performing operations on it.
- A file can be opened in a read, write or an suspend mode.
- Getc and putc functions are used to read and write a unmarried character.
- The function fscanf() permits to read and parse information from a file
- We can read (using the getc role) an entire file by looping to cover all the file until the EOF is encountered
- Nosotros tin can write to a file after creating its proper noun, by using the part fprintf() and it must have the newline character at the terminate of the string text.
Source: https://www.guru99.com/c-file-input-output.html
0 Response to "Reading Data From a File C# Separated by a Comma"
Post a Comment