Basics of File Handling in C#
Generally, the file is used to store the data. The term File Handling refers to the various operations like creating the file, reading from the file, writing to the file, appending the file, etc. There are two basic operation which is mostly used in file handling is reading and writing of the file. The file becomes stream when we open the file for writing and reading. A stream is a sequence of bytes which is used for communication. Two stream can be formed from file one is input stream which is used to read the file and another is output stream is used to write in the file. In C#, System.IO namespace contains classes which handle input and output streams and provide information about file and directory structure.
File-Handling-Class-Hierarchy
Here we are going to discuss about two classes which are useful for writing in and reading from the text file.
StreamWriter Class
The StreamWriter class implements TextWriter for writing character to stream in a particular format. The class contains the following method which are mostly used.
Method |
Description |
Close() |
Closes the current StreamWriter object and stream associate with it. |
Flush() |
Clears all the data from the buffer and write it in the stream associate with it. |
Write() |
Write data to the stream. It has different overloads for different data types to write in stream. |
WriteLine() |
It is same as Write() but it adds the newline character at the end of the data. |
Example:
using System;
using System.IO;
namespace GeeksforGeeks {
class GFG {
class WriteToFile {
public void Data()
{
Console.WriteLine( "Enter the Text that you want to write on File" );
string str = Console.ReadLine();
sw.WriteLine(str);
sw.Flush();
sw.Close();
}
}
static void Main( string [] args)
{
WriteToFile wr = new WriteToFile();
wr.Data();
Console.ReadKey();
}
}
}
|
Input:
Output: You will find the file at the specified location having the content:
StreamReader Class
The StreamReader class implements TextReader for reading character from the stream in a particular format. The class contains the following method which are mostly used.
Method |
Description |
Close() |
Closes the current StreamReader object and stream associate with it. |
Peek() |
Returns the next available character but does not consume it. |
Read() |
Reads the next character in input stream and increment characters position by one in the stream |
ReadLine() |
Reads a line from the input stream and return the data in form of string |
Seek() |
It is use to read/write at the specific location from a file |
Example:
using System;
using System.IO;
namespace GeeksforGeeks {
class GFG {
class ReadFile {
public void DataReading()
{
Console.WriteLine( "Content of the File" );
sr.BaseStream.Seek(0, SeekOrigin.Begin);
string str = sr.ReadLine();
while (str != null )
{
Console.WriteLine(str);
str = sr.ReadLine();
}
Console.ReadLine();
sr.Close();
}
}
static void Main( string [] args)
{
ReadFile wr = new ReadFile();
wr.DataReading();
}
}
}
|
Output:
Last Updated :
09 Sep, 2019
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...