Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

StreamReader-Klasse

 

Implementiert einen TextReader, der Zeichen aus einem Bytestream in einer bestimmten Codierung liest.

Um den .NET Framework-Quellcode für diesen Typ zu durchsuchen, finden Sie unter der Reference Source.

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

System.Object
  System.MarshalByRefObject
    System.IO.TextReader
      System.IO.StreamReader

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class StreamReader : TextReader

NameBeschreibung
System_CAPS_pubmethodStreamReader(Stream)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Stream.

System_CAPS_pubmethodStreamReader(Stream, Boolean)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Stream mit der angegebenen Option zur Erkennung der Bytereihenfolgemarken.

System_CAPS_pubmethodStreamReader(Stream, Encoding)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Stream und mit der angegebenen Zeichencodierung.

System_CAPS_pubmethodStreamReader(Stream, Encoding, Boolean)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Stream mit der angegebenen Zeichencodierung und Option zur Erkennung der Bytereihenfolgemarken.

System_CAPS_pubmethodStreamReader(Stream, Encoding, Boolean, Int32)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Stream mit der angegebenen Zeichencodierung, Option zur Erkennung der Bytereihenfolgemarken und Puffergröße.

System_CAPS_pubmethodStreamReader(Stream, Encoding, Boolean, Int32, Boolean)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Stream auf Grundlage der angegebenen Zeichencodierung, der Option zur Erkennung der Bytereihenfolgenmarken, der Puffergröße und lässt optional den Stream geöffnet.

System_CAPS_pubmethodStreamReader(String)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Dateinamen.

System_CAPS_pubmethodStreamReader(String, Boolean)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Dateinamen mit der angegebenen Option zur Erkennung der Bytereihenfolgemarken.

System_CAPS_pubmethodStreamReader(String, Encoding)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Dateinamen und mit der angegebenen Zeichencodierung.

System_CAPS_pubmethodStreamReader(String, Encoding, Boolean)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Dateinamen mit der angegebenen Zeichencodierung und Option zur Erkennung der Bytereihenfolgemarken.

System_CAPS_pubmethodStreamReader(String, Encoding, Boolean, Int32)

Initialisiert eine neue Instanz der StreamReader-Klasse für den angegebenen Dateinamen mit der angegebenen Zeichencodierung, Option zur Erkennung der Bytereihenfolgemarken und Puffergröße.

NameBeschreibung
System_CAPS_pubpropertyBaseStream

Gibt den zugrunde liegenden Stream zurück.

System_CAPS_pubpropertyCurrentEncoding

Ruft die aktuelle Zeichencodierung ab, die das aktuelle StreamReader-Objekt verwendet.

System_CAPS_pubpropertyEndOfStream

Ruft einen Wert ab, der angibt, ob sich die aktuelle Streamposition am Ende des Streams befindet.

NameBeschreibung
System_CAPS_pubmethodClose()

Schließt das StreamReader-Objekt sowie den zugrunde liegenden Stream und gibt alle dem Reader zugeordneten Systemressourcen frei.(Überschreibt TextReader.Close().)

System_CAPS_pubmethodCreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodDiscardBufferedData()

Löscht den internen Puffer.

System_CAPS_pubmethodDispose()

Gibt alle vom TextReader-Objekt verwendeten Ressourcen frei.(Geerbt von „TextReader“.)

System_CAPS_protmethodDispose(Boolean)

Schließt den zugrunde liegenden Stream und gibt die vom StreamReader verwendeten nicht verwalteten Ressourcen sowie optional auch die verwalteten Ressourcen frei.(Überschreibt TextReader.Dispose(Boolean).)

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetLifetimeService()

Ruft die aktuellen Service-Objekt, das die Lebensdauerrichtlinien für diese Instanz steuert.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodInitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinien für diese Instanz ab.(Geerbt von „MarshalByRefObject“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_protmethodMemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject Objekt.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodPeek()

Gibt das nächste verfügbare Zeichen zurück, ohne es zu verarbeiten.(Überschreibt TextReader.Peek().)

System_CAPS_pubmethodRead()

Liest das nächste Zeichen aus dem Eingabestream und verschiebt die Zeichenposition um ein Zeichen nach vorn.(Überschreibt TextReader.Read().)

System_CAPS_pubmethodRead(Char[], Int32, Int32)

Liest vom aktuellen Stream ein angegebenes Maximum von Zeichen in einen Puffer ein und beginnt dabei am angegebenen Index.(Überschreibt TextReader.Read(Char[], Int32, Int32).)

System_CAPS_pubmethodReadAsync(Char[], Int32, Int32)

Liest eine angegebene Höchstanzahl von Zeichen asynchron aus dem aktuellen Stream und schreibt die Daten in einen Puffer, wobei am angegebenen Index begonnen wird.(Überschreibt TextReader.ReadAsync(Char[], Int32, Int32).)

System_CAPS_pubmethodReadBlock(Char[], Int32, Int32)

Liest eine angegebene Höchstanzahl von Zeichen aus dem aktuellen Stream und schreibt die Daten in einen Puffer, wobei am angegebenen Index begonnen wird.(Überschreibt TextReader.ReadBlock(Char[], Int32, Int32).)

System_CAPS_pubmethodReadBlockAsync(Char[], Int32, Int32)

Liest eine angegebene Höchstanzahl von Zeichen asynchron aus dem aktuellen Stream und schreibt die Daten in einen Puffer, wobei am angegebenen Index begonnen wird.(Überschreibt TextReader.ReadBlockAsync(Char[], Int32, Int32).)

System_CAPS_pubmethodReadLine()

Liest eine Zeile von Zeichen aus dem aktuellen Stream und gibt die Daten als Zeichenfolge zurück.(Überschreibt TextReader.ReadLine().)

System_CAPS_pubmethodReadLineAsync()

Liest eine Zeile von Zeichen asynchron aus dem aktuellen Stream und gibt die Daten als Zeichenfolge zurück.(Überschreibt TextReader.ReadLineAsync().)

System_CAPS_pubmethodReadToEnd()

Liest alle Zeichen von der aktuellen Position bis zum Ende des Streams.(Überschreibt TextReader.ReadToEnd().)

System_CAPS_pubmethodReadToEndAsync()

Liest alle Zeichen asynchron von der aktuellen Position bis zum Ende des Streams und gibt diese als einzelne Zeichenfolge zurück.(Überschreibt TextReader.ReadToEndAsync().)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

NameBeschreibung
System_CAPS_pubfieldSystem_CAPS_staticNull

Ein StreamReader-Objekt um einen leeren Stream.

System_CAPS_noteHinweis

Die .NET Framework-Quellcodes für diesen Typ finden Sie unter der Reference Source. Sie können den Quellcode online Durchsuchen, Referenz für die Offlineanzeige herunterladen und schrittweise durchlaufen (inklusive Patches und Updates) während des Debuggens; see instructions.

StreamReader für die Zeicheneingabe in einer bestimmten Codierung entwickelt, während die Stream Klasse dient zur Eingabe und Ausgabe von Bytes. Verwendung StreamReader zum Lesen von Zeilen mit Informationen aus einer standard-Text-Datei.

System_CAPS_importantWichtig

Dieser Typ implementiert die IDisposable Schnittstelle. Wenn Sie mit dem Datentyp haben, sollten Sie es entweder direkt oder indirekt freigeben. Damit des Typs direkt freigegeben werden, rufen Sie seine Dispose -Methode in eine try/catch Block. Verwenden, um es indirekt freigegeben werden, z. B. ein Sprachkonstrukt using (in c#) oder Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt "Verwenden eines Objekts, die implementiert IDisposable" in der IDisposable Thema zur Schnittstelle.

StreamReader Der Standardwert ist UTF-8-Codierung, sofern nicht anders, anstatt die ANSI-Codepage für das aktuelle System automatisch angegeben. UTF-8 behandelt Unicode-Zeichen richtig und stellt konsistente Ergebnisse unter lokalisierten Versionen des Betriebssystems. Wenn Sie die aktuelle Zeichencodierung mithilfe der CurrentEncoding -Eigenschaft erhalten, ist der Wert bis nach der ersten Read Methode nicht zulässig, da die automatische Erkennung der Codierung erst nach dem ersten Aufruf einer Read Methode erfolgt.

In der Standardeinstellung eine StreamReader ist nicht threadsicher. Finden Sie unter TextReader.Synchronized für ein threadsicherer Wrapper.

Die Read(Char[], Int32, Int32) und Write(Char[], Int32, Int32) überladene Methoden lesen und Schreiben Sie die Anzahl der von angegebenen Zeichen der count Parameter. Diese werden von BufferedStream.Read und BufferedStream.Write, dem Lesen und Schreiben Sie die angegebene Anzahl von Bytes von der count Parameter. Verwenden der BufferedStream Methoden nur zum Lesen und Schreiben einer ganzzahligen Anzahl von Byte-Elementen.

System_CAPS_noteHinweis

Beim Lesen aus einem Stream, ist es effizienter, einen Puffer zu verwenden, die die gleiche Größe wie der interne Puffer des Streams.

Eine Liste allgemeiner e/a-Aufgaben finden Sie unter Allgemeine E/A-Aufgaben.

Im folgende Beispiel wird eine Instanz der StreamReader Text aus einer Datei zu lesen. In diesem Beispiel verwendete Konstruktor wird nicht unterstützt, für die Verwendung in Windows Store Apps.

using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        try 
        {
            // Create an instance of StreamReader to read from a file.
            // The using statement also closes the StreamReader.
            using (StreamReader sr = new StreamReader("TestFile.txt")) 
            {
                string line;
                // Read and display lines from the file until the end of 
                // the file is reached.
                while ((line = sr.ReadLine()) != null) 
                {
                    Console.WriteLine(line);
                }
            }
        }
        catch (Exception e) 
        {
            // Let the user know what went wrong.
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
    }
}

Im folgenden Beispiel wird ein StreamReader -Objekt und ruft die ReadAsync Methode, um eine Datei asynchron zu lesen.

using System;
using System.IO;
using System.Threading.Tasks;

class Example
{
    public static void Main()
    {
        ReadAndDisplayFilesAsync();
    }

    private async static void ReadAndDisplayFilesAsync()
    {
        String filename = "TestFile1.txt";
        Char[] buffer;

        using (var sr = new StreamReader(filename)) {
            buffer = new Char[(int)sr.BaseStream.Length];
            await sr.ReadAsync(buffer, 0, (int)sr.BaseStream.Length);
        }

        Console.WriteLine(new String(buffer));
    }
}
// The example displays the following output:
//       This is the first line of text in a relatively short file.
//       This is the second line.
//       This is the third line.
//       This is the fourth and final line.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: