BinaryReader BinaryReader BinaryReader BinaryReader Class

Definition

Liest primitive Datentypen als Binärwerte in einer spezifischen Codierung.Reads primitive data types as binary values in a specific encoding.

public ref class BinaryReader : IDisposable
[System.Runtime.InteropServices.ComVisible(true)]
public class BinaryReader : IDisposable
type BinaryReader = class
    interface IDisposable
Public Class BinaryReader
Implements IDisposable
Vererbung
BinaryReaderBinaryReaderBinaryReaderBinaryReader
Attribute
Implementiert

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Anwendungseinstellungen in einer Datei gespeichert und abgerufen werden.The following code example demonstrates how to store and retrieve application settings in a file.

using System;
using System.IO;

class ConsoleApplication
{
    const string fileName = "AppSettings.dat";

    static void Main()
    {
        WriteDefaultValues();
        DisplayValues();
    }

    public static void WriteDefaultValues()
    {
        using (BinaryWriter writer = new BinaryWriter(File.Open(fileName, FileMode.Create)))
        {
            writer.Write(1.250F);
            writer.Write(@"c:\Temp");
            writer.Write(10);
            writer.Write(true);
        }
    }

    public static void DisplayValues()
    {
        float aspectRatio;
        string tempDirectory;
        int autoSaveTime;
        bool showStatusBar;

        if (File.Exists(fileName))
        {
            using (BinaryReader reader = new BinaryReader(File.Open(fileName, FileMode.Open)))
            {
                aspectRatio = reader.ReadSingle();
                tempDirectory = reader.ReadString();
                autoSaveTime = reader.ReadInt32();
                showStatusBar = reader.ReadBoolean();
            }

            Console.WriteLine("Aspect ratio set to: " + aspectRatio);
            Console.WriteLine("Temp directory is: " + tempDirectory);
            Console.WriteLine("Auto save time set to: " + autoSaveTime);
            Console.WriteLine("Show status bar: " + showStatusBar);
        }
    }
}
Imports System.IO

Module Module1
    Const fileName As String = "AppSettings.dat"

    Sub Main()
        WriteDefaultValues()
        DisplayValues()
    End Sub

    Sub WriteDefaultValues()
        Using writer As BinaryWriter = New BinaryWriter(File.Open(fileName, FileMode.Create))
            writer.Write(1.25F)
            writer.Write("c:\Temp")
            writer.Write(10)
            writer.Write(True)
        End Using
    End Sub

    Sub DisplayValues()
        Dim aspectRatio As Single
        Dim tempDirectory As String
        Dim autoSaveTime As Integer
        Dim showStatusBar As Boolean

        If (File.Exists(fileName)) Then

            Using reader As BinaryReader = New BinaryReader(File.Open(fileName, FileMode.Open))
                aspectRatio = reader.ReadSingle()
                tempDirectory = reader.ReadString()
                autoSaveTime = reader.ReadInt32()
                showStatusBar = reader.ReadBoolean()
            End Using

            Console.WriteLine("Aspect ratio set to: " & aspectRatio)
            Console.WriteLine("Temp directory is: " & tempDirectory)
            Console.WriteLine("Auto save time set to: " & autoSaveTime)
            Console.WriteLine("Show status bar: " & showStatusBar)
        End If
    End Sub

End Module

Hinweise

Die BinaryReader-Klasse stellt Methoden bereit, die das Lesen von primitiven Datentypen aus einem Stream vereinfachen.The BinaryReader class provides methods that simplify reading primitive data types from a stream. Beispielsweise können Sie die ReadBoolean-Methode verwenden, um das nächste Byte als booleschen Wert zu lesen und die aktuelle Position im Stream um ein Byte zu verschieben.For example, you can use the ReadBoolean method to read the next byte as a Boolean value and advance the current position in the stream by one byte. Die-Klasse enthält Lesemethoden, die unterschiedliche Datentypen unterstützen.The class includes read methods that support different data types.

Wenn Sie eine neue Instanz der BinaryReader-Klasse erstellen, geben Sie den zu lesenden Datenstrom an, und geben Sie optional den Codierungstyp an, und geben Sie an, ob der Stream geöffnet bleiben soll, nachdem das BinaryReader-Objekt freigegeben wurde.When you create a new instance of the BinaryReader class, you provide the stream to read from, and optionally specify the type of encoding and whether to leave the stream open after disposing the BinaryReader object. Wenn Sie keinen Codierungstyp angeben, wird UTF-8 verwendet.If you do not specify an encoding type, UTF-8 is used.

Wichtig

Dieser Typ implementiert die IDisposable-Schnittstelle.This type implements the IDisposable interface. Nach Abschluss der Verwendung sollten Sie den Typ entweder direkt oder indirekt löschen.When you have finished using the type, you should dispose of it either directly or indirectly. Zum direkten Löschen des Typs rufen Sie seine Dispose-Methode in einem try/catch-Block auf.To dispose of the type directly, call its Dispose method in a try/catch block. Zum indirekten Löschen verwenden Sie ein Sprachkonstrukt wie using (in C#) oder Using (in Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt „Verwenden eines Objekts, das IDisposable implementiert“ des Themas „Die IDisposable-Schnittstelle“.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Konstruktoren

BinaryReader(Stream) BinaryReader(Stream) BinaryReader(Stream) BinaryReader(Stream)

Initialisiert eine neue Instanz der auf dem bereitgestellten Stream basierenden BinaryReader-Klasse mit einer spezifischen Stream- und Zeichencodierung unter Verwendung von UTF-8.Initializes a new instance of the BinaryReader class based on the specified stream and using UTF-8 encoding.

BinaryReader(Stream, Encoding) BinaryReader(Stream, Encoding) BinaryReader(Stream, Encoding) BinaryReader(Stream, Encoding)

Initialisiert eine neue Instanz der auf dem bereitgestellten Stream basierenden BinaryReader-Klasse mit einer spezifischen Stream- und Zeichencodierung.Initializes a new instance of the BinaryReader class based on the specified stream and character encoding.

BinaryReader(Stream, Encoding, Boolean) BinaryReader(Stream, Encoding, Boolean) BinaryReader(Stream, Encoding, Boolean) BinaryReader(Stream, Encoding, Boolean)

Initialisiert eine neue Instanz der BinaryReader-Klasse auf Grundlage des angegebenen Streams und der Zeichencodierung und lässt den Stream optional geöffnet.Initializes a new instance of the BinaryReader class based on the specified stream and character encoding, and optionally leaves the stream open.

Eigenschaften

BaseStream BaseStream BaseStream BaseStream

Gewährt Zugriff auf den zugrunde liegenden Stream von BinaryReader.Exposes access to the underlying stream of the BinaryReader.

Methoden

Close() Close() Close() Close()

Schließt den aktuellen Reader und den zugrunde liegenden Stream.Closes the current reader and the underlying stream.

Dispose() Dispose() Dispose() Dispose()

Gibt alle von der aktuellen Instanz der BinaryReader-Klasse verwendeten Ressourcen frei.Releases all resources used by the current instance of the BinaryReader class.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von der BinaryReader-Klasse verwendeten nicht verwalteten Ressourcen frei und gibt (optional) auch die verwalteten Ressourcen frei.Releases the unmanaged resources used by the BinaryReader class and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
FillBuffer(Int32) FillBuffer(Int32) FillBuffer(Int32) FillBuffer(Int32)

Füllt den internen Puffer mit der angegebenen Anzahl von Bytes, die aus dem Stream gelesen wurden.Fills the internal buffer with the specified number of bytes read from the stream.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
PeekChar() PeekChar() PeekChar() PeekChar()

Gibt das nächste verfügbare Zeichen zurück, ohne die Byte- oder Zeichenposition zu erhöhen.Returns the next available character and does not advance the byte or character position.

Read() Read() Read() Read()

Liest Zeichen aus dem zugrunde liegenden Stream und erhöht die aktuelle Position im Stream in Abhängigkeit von der verwendeten Encoding und dem aus dem Stream gelesenen Zeichen.Reads characters from the underlying stream and advances the current position of the stream in accordance with the Encoding used and the specific character being read from the stream.

Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32)

Liest die angegebene Anzahl von Bytes beginnend bei einem angegebenen Punkt im Bytearray aus dem Datenstrom.Reads the specified number of bytes from the stream, starting from a specified point in the byte array.

Read(Char[], Int32, Int32) Read(Char[], Int32, Int32) Read(Char[], Int32, Int32) Read(Char[], Int32, Int32)

Liest die angegebene Anzahl von Zeichen beginnend bei einem angegebenen Punkt im Zeichenarray aus dem Datenstrom.Reads the specified number of characters from the stream, starting from a specified point in the character array.

Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>)

Liest eine Bytesequenz aus dem aktuellen Stream und setzt die Position in diesem Stream um die Anzahl der gelesenen Bytes nach vorn.Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

Read(Span<Char>) Read(Span<Char>) Read(Span<Char>) Read(Span<Char>)

Liest die gleiche Anzahl von Zeichen aus dem aktuellen Stream wie die Länge des bereitgestellten Puffers, schreibt sie in den bereitgestellten Puffer und erhöht die aktuelle Position in Abhängigkeit von der verwendeten Encoding und dem aus dem Stream gelesenen Zeichen.Reads, from the current stream, the same number of characters as the length of the provided buffer, writes them in the provided buffer, and advances the current position in accordance with the Encoding used and the specific character being read from the stream.

Read7BitEncodedInt() Read7BitEncodedInt() Read7BitEncodedInt() Read7BitEncodedInt()

Liest eine 32-Bit-Ganzzahl in komprimiertem Format.Reads in a 32-bit integer in compressed format.

ReadBoolean() ReadBoolean() ReadBoolean() ReadBoolean()

Liest einen Boolean-Wert aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 1 Byte.Reads a Boolean value from the current stream and advances the current position of the stream by one byte.

ReadByte() ReadByte() ReadByte() ReadByte()

Liest das nächste Byte aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 1 Byte.Reads the next byte from the current stream and advances the current position of the stream by one byte.

ReadBytes(Int32) ReadBytes(Int32) ReadBytes(Int32) ReadBytes(Int32)

Liest die angegebene Anzahl von Bytes aus dem aktuellen Datenstrom in ein Bytearray und erhöht die aktuelle Position um diese Anzahl von Bytes.Reads the specified number of bytes from the current stream into a byte array and advances the current position by that number of bytes.

ReadChar() ReadChar() ReadChar() ReadChar()

Liest das nächste Zeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream in Abhängigkeit von der verwendeten Encoding und dem aus dem Stream gelesenen Zeichen.Reads the next character from the current stream and advances the current position of the stream in accordance with the Encoding used and the specific character being read from the stream.

ReadChars(Int32) ReadChars(Int32) ReadChars(Int32) ReadChars(Int32)

Liest die angegebene Anzahl von Zeichen aus dem aktuellen Datenstrom, gibt die Daten in einem Zeichenarray zurück und erhöht die aktuelle Position in Abhängigkeit von der verwendeten Encoding und dem aus dem Datenstrom gelesenen Zeichen.Reads the specified number of characters from the current stream, returns the data in a character array, and advances the current position in accordance with the Encoding used and the specific character being read from the stream.

ReadDecimal() ReadDecimal() ReadDecimal() ReadDecimal()

Liest einen Dezimalwert aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 16 Bytes.Reads a decimal value from the current stream and advances the current position of the stream by sixteen bytes.

ReadDouble() ReadDouble() ReadDouble() ReadDouble()

Liest einen 8-Byte-Gleitkommawert aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 8 Bytes.Reads an 8-byte floating point value from the current stream and advances the current position of the stream by eight bytes.

ReadInt16() ReadInt16() ReadInt16() ReadInt16()

Liest eine 2-Byte-Ganzzahl mit Vorzeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 2 Bytes.Reads a 2-byte signed integer from the current stream and advances the current position of the stream by two bytes.

ReadInt32() ReadInt32() ReadInt32() ReadInt32()

Liest eine 4-Byte-Ganzzahl mit Vorzeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 4 Bytes.Reads a 4-byte signed integer from the current stream and advances the current position of the stream by four bytes.

ReadInt64() ReadInt64() ReadInt64() ReadInt64()

Liest eine 8-Byte-Ganzzahl mit Vorzeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 8 Bytes.Reads an 8-byte signed integer from the current stream and advances the current position of the stream by eight bytes.

ReadSByte() ReadSByte() ReadSByte() ReadSByte()

Liest ein Byte mit Vorzeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um ein Byte.Reads a signed byte from this stream and advances the current position of the stream by one byte.

ReadSingle() ReadSingle() ReadSingle() ReadSingle()

Liest einen 4-Byte-Gleitkommawert aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 4 Bytes.Reads a 4-byte floating point value from the current stream and advances the current position of the stream by four bytes.

ReadString() ReadString() ReadString() ReadString()

Liest eine Zeichenfolge aus dem aktuellen Stream.Reads a string from the current stream. Die Zeichenfolge weist ein Präfix mit der Länge auf, die als Ganzzahl mit jeweils 7 Bits codiert ist.The string is prefixed with the length, encoded as an integer seven bits at a time.

ReadUInt16() ReadUInt16() ReadUInt16() ReadUInt16()

Liest eine 2-Byte-Ganzzahl ohne Vorzeichen mithilfe einer Little-Endian-Codierung aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 2 Bytes.Reads a 2-byte unsigned integer from the current stream using little-endian encoding and advances the position of the stream by two bytes.

ReadUInt32() ReadUInt32() ReadUInt32() ReadUInt32()

Liest eine 4-Byte-Ganzzahl ohne Vorzeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 4 Bytes.Reads a 4-byte unsigned integer from the current stream and advances the position of the stream by four bytes.

ReadUInt64() ReadUInt64() ReadUInt64() ReadUInt64()

Liest eine 8-Byte-Ganzzahl ohne Vorzeichen aus dem aktuellen Stream und erhöht die aktuelle Position im Stream um 8 Bytes.Reads an 8-byte unsigned integer from the current stream and advances the position of the stream by eight bytes.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Explizite Schnittstellenimplementierungen

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Gibt alle vom BinaryReader verwendeten Ressourcen frei.Releases all resources used by the BinaryReader.

Gilt für:

Siehe auch