TextReader是.NET Framework中的一个抽象类,用于从文本流中读取字符。而TextReader.Close方法则是用于关闭当前TextReader对象并释放与该对象相关联的所有资源。
使用方法如下:
TextReader tr = new StreamReader("example.txt");
// 读取文本流
tr.Close();
这里使用了StreamReader作为TextReader对象的实现类,它支持从磁盘文件和其它类型的流中读取字符。
还有一个需要注意的地方是,Close方法不只是关闭文件,它也会释放由该对象使用的系统资源。因此,在使用完TextReader对象之后,一定要调用Close方法来确保资源得到释放。
下面是两个示例说明:
示例1:从文件中读取数据
以下示例展示了如何读取位于“example.txt”文件中的数据,并使用Close方法关闭StreamReader对象。
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
try
{
using (TextReader tr = new StreamReader("example.txt"))
{
Console.WriteLine(tr.ReadToEnd());
tr.Close();
}
}
catch (Exception e)
{
Console.WriteLine("The file could not be read:");
Console.WriteLine(e.Message);
}
}
}
示例2:从字符串数组中读取数据
以下示例展示了如何从一个包含字符串的数组中读取数据,并使用Close方法关闭StreamReader对象。
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string[] lines = { "First line", "Second line", "Third line" };
using (TextReader tr = new StringReader(string.Join(Environment.NewLine, lines)))
{
Console.WriteLine(tr.ReadToEnd());
tr.Close();
}
}
}
这个示例先将字符串数组中的内容通过string.Join函数连接在一起,成为一个包含多行文本的字符串,然后将其作为参数传递给TextReader的子类StringReader,从而创建一个用于读取该字符串的TextReader对象。最后,通过ReadToEnd方法将整个字符串读取出来,并使用Close方法关闭TextReader对象。