Text files provide a common denominator format where both people and programs can read and understand. The .NET Framework includes convenience classes that make reading and writing text files very easy. The following sequence outlines the basic steps necessary to work with text files:
- Open the file
- Read/Write to the file
- Close the file
Writing to a text File
Listing 1 : Writing Text Data to a File: TextFileWriter.csusing System;
using System.IO;
namespace csharp_station.howto
{
class TextFileWriter
{
static void Main(string[] args) {
//Create a write and open the file
TextWriter tw = new StreamWriter("date.txt");
//write a line of text to the File
tw.WriteLine(DateTime.Now);
//close the Stream
tw.Close();
}
}
}
This program creates a text file when it runs. In the directory where the executable program is located, you will find a file named date.txt. If you view the contents of this file, you will see the following textual representation of the date and time when the program last run :
2/15/2002 8:54:51 PM
The first task in Listing 1 is to open the file. This happens by instantiating a StreamWriter Class, which returns an object of type TextWriter. The result could have also been assigned to a StreamWriter instance. The StreamWriter was called with a single parameter, indicating the name of the file to open. If this file doesn’t exist, the StreamWriter will create it. The StreamWriter also has 6 other constructor overloads that permit you to specify the file in different ways, buffer info, and text encoding. Here is the line from the code:
tw.WriteLine(DateTime.Now);
When you are done writing to the file, be sure to close it as follows:
tw.close();
Reading From a text File
Listing 2 shows how to read from a text file.Listing 2 : Reading Text Data from a file : TextFileReader.cs
using System;
using System.IO;
namespace csharp_station.howto
{
class TextFileReader
{
static void Main(string[] args) {
//Create reader and open the file
TextReader tr = new StreamReader("date.txt");
//read a line of text
tw.WriteLine(tr.ReadLine());
//close the Stream
tw.Close();
}
}
}
In above code, the text file is opened in a manner similar to the method used in Listing 1, except it uses a StreamReader class constructor to create an instance of a textreader. The StreamReader class includes additional overloads that allow you to specify the file in different ways, text format encoding, and buffer info. This program opens the date.txt file, which should be in the same directory as the executable file:
TextReader tr = new StreamReader(date.txt);
Within a Console.WriteLine statement, the program reads a line of text from the file, using the ReadLine() method of the Textreader instance. The Textreader class also includes methods that allow you to invoke the Read() method to read one or more character or use the Peek() method to see what the next character is without pulling I from the stream. Here is the code that reads an entire line from the text file:
Console.WriteLine(tr.ReadLine());
When done reading, you should close the file as follows:
tr.close();
0 comments:
Post a Comment