StreamReader.Peek Metod

Definition

Returnerar nästa tillgängliga tecken men använder det inte.

public:
 override int Peek();
public override int Peek();
override this.Peek : unit -> int
Public Overrides Function Peek () As Integer

Returer

Ett heltal som representerar nästa tecken som ska läsas eller -1 om det inte finns några tecken att läsa eller om strömmen inte stöder sökning.

Undantag

Ett I/O-fel inträffar.

Exempel

I följande kodexempel läss rader från en fil tills slutet av filen har nåtts.

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());
        }
    }
}
Imports System.IO
Imports System.Text

Public Class Test

    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        Try
            If File.Exists(path) Then
                File.Delete(path)
            End If

            Dim sw As StreamWriter = New StreamWriter(path)
            sw.WriteLine("This")
            sw.WriteLine("is some text")
            sw.WriteLine("to test")
            sw.WriteLine("Reading")
            sw.Close()

            Dim sr As StreamReader = New StreamReader(path)

            Do While sr.Peek() > -1
                Console.WriteLine(sr.ReadLine())
            Loop
            sr.Close()
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

Kommentarer

Metoden Peek returnerar ett heltalsvärde för att avgöra om filens slut eller något annat fel har uppstått. På så sätt kan en användare först kontrollera om det returnerade värdet är -1 innan det gjuts till en Char typ.

Den här metoden åsidosätter TextReader.Peek.

Objektets StreamReader aktuella position ändras inte av Peek.

Gäller för

Se även