MemoryStream.SetLength(Int64) MemoryStream.SetLength(Int64) MemoryStream.SetLength(Int64) MemoryStream.SetLength(Int64) Method

Definition

Legt die Länge des aktuellen Streams auf den angegebenen Wert fest.Sets the length of the current stream to the specified value.

public:
 override void SetLength(long value);
public override void SetLength (long value);
override this.SetLength : int64 -> unit
Public Overrides Sub SetLength (value As Long)

Parameter

value
Int64 Int64 Int64 Int64

Der Wert, auf den die Länge festgelegt werden soll.The value at which to set the length.

Ausnahmen

Die Größe des aktuellen Streams kann nicht geändert werden, und value übersteigt die aktuelle Kapazität.The current stream is not resizable and value is larger than the current capacity.

- oder --or- Der aktuelle Stream unterstützt keine Schreibvorgänge.The current stream does not support writing.

value ist negativ oder größer als die maximale Länge von MemoryStream, wobei die maximale Länge (MaxValue - Ursprung) ist, und der Ursprung der Index des zugrunde liegenden Puffers ist, an dem der Stream beginnt.value is negative or is greater than the maximum length of the MemoryStream, where the maximum length is(MaxValue - origin), and origin is the index into the underlying buffer at which the stream starts.

Hinweise

Diese Methode überschreibt SetLength.This method overrides SetLength.

Wenn der angegebene Wert kleiner als die aktuelle Länge des Streams ist, wird der Stream abgeschnitten.If the specified value is less than the current length of the stream, the stream is truncated. Wenn nach dem Abschneiden die aktuelle Position im Stream nach dem Ende des Streams ist die ReadByte Methode gibt-1 zurück, die Read Methode liest NULL Bytes in das angegebene Byte-Array, und Write und WriteByte Methoden Anfügen angegebenen Bytes am Ende des Streams an, dessen Länge.If after the truncation the current position within the stream is past the end of the stream, the ReadByte method returns -1, the Read method reads zero bytes into the provided byte array, and Write and WriteByte methods append specified bytes at the end of the stream, increasing its length. Wenn der angegebene Wert größer als die aktuelle Kapazität ist und der Datenstrom in der Größe veränderbar ist, wird die Kapazität, und die aktuelle Position im Stream bleibt unverändert.If the specified value is larger than the current capacity and the stream is resizable, the capacity is increased, and the current position within the stream is unchanged. Wenn die Länge erhöht wird, werden die Inhalte des Streams zwischen den alten und die neue Länge mit Nullen initialisiert.If the length is increased, the contents of the stream between the old and the new length are initialized to zeros.

Hinweis

Ein MemoryStream Instanz muss Schreibvorgänge unterstützen für diese Methode funktioniert.A MemoryStream instance must support writing for this method to work. Verwenden der CanWrite Eigenschaft, um zu bestimmen, ob die aktuelle Instanz Schreibvorgänge unterstützt.Use the CanWrite property to determine whether the current instance supports writing. Weitere Informationen finden Sie unter CanWrite.For additional information, see CanWrite.

Gilt für:

Siehe auch