System.Classes.TBinaryReader.Create
Delphi
constructor Create(Stream: TStream; AEncoding: TEncoding = nil; AOwnsStream: Boolean = False); overload;
constructor Create(const Filename: string; Encoding: TEncoding = nil); overload;
C++
__fastcall TBinaryReader(TStream* Stream, System::Sysutils::TEncoding* AEncoding, bool AOwnsStream)/* overload */;
__fastcall TBinaryReader(const System::UnicodeString Filename, System::Sysutils::TEncoding* Encoding)/* overload */;
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
constructor | public | System.Classes.pas System.Classes.hpp |
System.Classes | TBinaryReader |
Beschreibung
Erzeugt eine TBinaryReader-Instanz.
Mit Create können Sie eine TBinaryReader-Instanz erstellen und initialisieren.
Es gibt drei überladene Create-Methoden:
- Die erste Methode hat zwei Parameter:
Stream
, d.h. der Stream aus dem TBinaryReader liest und dieAEncoding
-Streamcodierung.AEncoding
wird standardmäßig für Delphi aufnil
gesetzt. - Die zweite Methode hat drei Parameter:
Stream
,AEncoding
undAOwnsStream
. Die beiden ersten wurden früher beschrieben. Mit der MethodeAOwnsStream
legen Sie fest, ob der Stream zu der Klasse TBinaryReader gehört oder nicht (in diesem Fall, kann er von anderen Instanzen der anderen Klassen verwendet werden.) - Die dritte Methode hat zwei Parameter:
Filename
, der einen Dateinamen repräsentiert undEncoding
, der die Codierung der Datei repräsentiert. Diese Methode erstellt einen Stream für die DateiFilename
. Eine Exception wird ausgelöst, wenn die Datei nicht gefunden wird.
Für die ABinaryReaderTBinaryReader-Instanz und die AFile.dat-Datei, die UTF8-Codierung hat, sollte der Quelltext für Delphi folgendermaßen aussehen:
ABinaryReader := TBinaryReader.Create('AFile.dat', TEncoding.UTF8);
Anmerkung: Für Strings und Zeichen sollten Sie die Codierung TEncoding.Unicode verwenden. Ansonsten wird eine Exception ausgelöst, wenn TBinaryReader versucht, aus dem Stream zu lesen.