Freigeben über


StreamReader.Peek-Methode

Gibt das nächste verfügbare Zeichen zurück, ohne es zu verarbeiten.

Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Overrides Function Peek As Integer
'Usage
Dim instance As StreamReader
Dim returnValue As Integer

returnValue = instance.Peek
public override int Peek ()
public:
virtual int Peek () override
public int Peek ()
public override function Peek () : int

Rückgabewert

Eine ganze Zahl, die das nächste zu lesende Zeichen darstellt, oder auch -1, wenn keine weiteren Zeichen verfügbar sind oder der Stream keine Suchvorgänge unterstützt.

Ausnahmen

Ausnahmetyp Bedingung

IOException

Ein E/A-Fehler ist aufgetreten.

Hinweise

Die Peek-Methode gibt eine ganze Zahl zurück, um festzustellen, ob entweder das Ende der Datei erreicht ist oder aber ein anderer Fehler aufgetreten ist. Dadurch kann der Benutzer zuerst prüfen, ob der zurückgegebene Wert -1 ist, bevor dieser Wert in einen Char-Typ umgewandelt wird.

Diese Methode überschreibt die Peek-Methode.

Die aktuelle Position des StreamReader-Objekts wird durch Peek nicht geändert. Der zurückgegebene Wert ist -1, wenn momentan keine weiteren Zeichen verfügbar sind.

Ein Beispiel für die Verwendung dieser Klasse finden Sie im Beispielabschnitt. In der folgenden Tabelle sind Beispiele für andere typische oder verwandte E/A-Aufgaben aufgeführt.

Aufgabe

Beispiel in diesem Thema

Eine Textdatei erstellen.

Gewusst wie: Schreiben von Text in eine Datei

Schreiben in eine Textdatei.

Gewusst wie: Schreiben von Text in eine Datei

Lesen aus einer Textdatei.

Gewusst wie: Lesen aus einer Textdatei

Anfügen von Text an eine Datei.

Gewusst wie: Öffnen und Anfügen an eine Protokolldatei

File.AppendText

FileInfo.AppendText

Abrufen der Größe einer Datei.

FileInfo.Length

Abrufen der Attribute einer Datei.

File.GetAttributes

Festlegen der Attribute einer Datei.

File.SetAttributes

Bestimmen, ob eine Datei vorhanden ist.

File.Exists

Lesen aus einer Binärdatei.

Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei

Schreiben in eine Binärdatei.

Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei

Beispiel

Im folgenden Codebeispiel werden Zeilen aus einer Datei gelesen, bis das Ende der Datei erreicht ist.

Imports System
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() >= 0
                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
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() >= 0) 
                {
                    Console.WriteLine(sr.ReadLine());
                }
            }
        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
using namespace System;
using namespace System::IO;

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   try
   {
      if ( File::Exists( path ) )
      {
         File::Delete( path );
      }
      StreamWriter^ sw = gcnew StreamWriter( path );
      try
      {
         sw->WriteLine( "This" );
         sw->WriteLine( "is some text" );
         sw->WriteLine( "to test" );
         sw->WriteLine( "Reading" );
      }
      finally
      {
         delete sw;
      }

      StreamReader^ sr = gcnew StreamReader( path );
      try
      {
         while ( sr->Peek() >= 0 )
         {
            Console::WriteLine( sr->ReadLine() );
         }
      }
      finally
      {
         delete sr;
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
import System.*;
import System.IO.*;

class Test
{
    public static void main(String[] args)
    {
        String path = "c:\\temp\\MyTest.txt";

        try {
            if (File.Exists(path)) {
                File.Delete(path);
            }
            StreamWriter sw = new StreamWriter(path);
            try {
                sw.WriteLine("This");
                sw.WriteLine("is some text");
                sw.WriteLine("to test");
                sw.WriteLine("Reading");
            }
            finally {
                sw.Dispose();
            }
            StreamReader sr = new StreamReader(path);
            try {
                while (sr.Peek() >= 0) {
                    Console.WriteLine(sr.ReadLine());
                }
            }
            finally {
                sr.Dispose();
            }
        }
        catch (System.Exception e) {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    } //main
} //Test

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

StreamReader-Klasse
StreamReader-Member
System.IO-Namespace

Weitere Ressourcen

Datei- und Stream-E/A
Gewusst wie: Lesen aus einer Textdatei
Gewusst wie: Schreiben von Text in eine Datei