System.Classes.TMemoryStream.Write

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function Write(const Buffer; Count: Longint): Longint; override;
function Write(const Buffer: TBytes; Offset, Count: Longint): Longint; override;

C++

virtual int __fastcall Write(const void *Buffer, int Count)/* overload */;
virtual int __fastcall Write(const System::DynamicArray<System::Byte> Buffer, int Offset, int Count)/* overload */;
inline int __fastcall  Write(const System::DynamicArray<System::Byte> Buffer, int Count){ return TStream::Write(Buffer, Count); }

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
System.Classes.pas
System.Classes.hpp
System.Classes TMemoryStream

Beschreibung

Schreibt die mit Count vorgegebene Anzahl von Bytes aus dem Puffer (Buffer) an die aktuelle Position im Speicherpuffer und aktualisiert dann die Position auf Basis von Count.

Mit Write werden, beginnend an der aktuellen Position, so viele Bytes in den Speicherpuffer des Streams geschrieben, wie in Count vorgegeben. Falls nötig, wird der Speicherpuffer dabei vergrößert. Alle Daten, die nach der aktuellen Position (Startposition) stehen, werden überschrieben, wenn der Vorgang nicht am Ende des Speicherpuffers startet.

Write aktualisiert die Eigenschaft Size mit dem Wert Position + Count, und die Eigenschaft Position erhält den neuen Wert von Size. Somit gehen bei einem Aufruf von Write alle Daten verloren, die im Speicher-Stream nach der aktuellen Position gespeichert waren.

Write schreibt immer die in Count festgelegte Anzahl von Bytes in den Puffer, wenn kein Speicherfehler auftritt. Demnach ist Write für ein TMemoryStream-Objekt das Äquivalent zur Methode WriteBuffer.

Alle anderen Methoden des Speicher-Streams, die das Lesen von Daten ermöglichen (WriteBuffer, WriteComponent), rufen zum Schreiben Write auf.

Siehe auch