System.IO.StreamReader.Peek 方法

方法描述

返回下一个可用的字符,但不使用它。

语法定义(C# System.IO.StreamReader.Peek 方法 的用法)

public override int Peek()

参数/返回值

参数值/返回值 参数类型/返回类型 参数描述/返回描述
返回值 System.Int32 表示下一个要读取的字符的整数,或者,如果没有要读取的字符或该流不支持查找,则为 -1。

提示和注释

Peek 方法将返回一个整数值,从而确定文件结束了还是发生了其他错误。 这样一来,用户在将返回值强制转换为 Char 类型之前就可以首先检查该值是否为 -1。

此方法重写 Peek。

Peek 不会更改 StreamReader 对象的当前位置。

System.IO.StreamReader.Peek 方法例子

下面的代码示例从文件中读取行,一直读到文件尾。

using System;
using System.IO;

class Test 
{
	
    public static void Main() 
    {
        string path = @"c:\temp\MyTest.txt";

        try 
        {
            if (File.Exists(path)) 
            {
                File.Delete(path);
            }

            using (StreamWriter sw = new StreamWriter(path)) 
            {
                sw.WriteLine("This");
                sw.WriteLine("is some text");
                sw.WriteLine("to test");
                sw.WriteLine("Reading");
            }

            using (StreamReader sr = new StreamReader(path)) 
            {

                while (sr.Peek() > -1) 
                {
                    Console.WriteLine(sr.ReadLine());
                }
            }
        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}

异常

异常 异常描述
IOException 发生 I/O 错误。

命名空间

namespace: System.IO

程序集: mscorlib(在 mscorlib.dll 中)

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0、1.1、1.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1 受以下版本支持:

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。