MemoryStream.SetLength(Int64) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將目前資料流的長度設定為指定的數值。
public:
override void SetLength(long value);
public override void SetLength (long value);
override this.SetLength : int64 -> unit
Public Overrides Sub SetLength (value As Long)
參數
- value
- Int64
要設定長度的數值。
例外狀況
value
為負數或大於 的最大長度 ,其中最大長度 MemoryStream為 (Int32.MaxValue - origin
) ,而且 origin
是數據流啟動所在基礎緩衝區的索引。
備註
這個方法會覆寫 SetLength。
如果指定的值小於數據流目前的長度,則會截斷數據流。 如果在截斷數據流內的目前位置超過數據流結尾之後,ReadByte方法會傳回 -1,Read方法會將零個字節讀入提供的位元組陣列,而且WriteWriteByte方法會在數據流結尾附加指定的位元組,並增加其長度。 如果指定的值大於目前的容量,而且數據流可重設大小,則會增加容量,而且數據流中的目前位置不會變更。 如果長度增加,則舊長度和新長度之間的數據流內容會初始化為零。
注意
MemoryStream實例必須支援撰寫這個方法才能運作。 CanWrite使用屬性來判斷目前的實例是否支援寫入。 如需詳細資訊,請參閱 CanWrite。