共用方式為


MemoryStream 建構函式

定義

初始化 MemoryStream 類別的新實例。

多載

MemoryStream()

使用可擴充容量初始化為零,初始化 MemoryStream 類別的新實例。

MemoryStream(Byte[])

根據指定的位元組陣列,初始化 MemoryStream 類別的新不可重設大小實例。

MemoryStream(Int32)

使用已指定初始化的可擴充容量,初始化 MemoryStream 類別的新實例。

MemoryStream(Byte[], Boolean)

根據指定的位元組陣列,初始化 MemoryStream 類別的新不可重設大小實例,並將 CanWrite 屬性設定為指定。

MemoryStream(Byte[], Int32, Int32)

根據位元組數位的指定區域(index),初始化 MemoryStream 類別的新不可重設大小實例。

MemoryStream(Byte[], Int32, Int32, Boolean)

根據位元組陣列的指定區域,初始化 MemoryStream 類別的新不可重設大小實例,並將 CanWrite 屬性設定為指定。

MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)

根據位元組陣列的指定區域,初始化 MemoryStream 類別的新實例,並將 CanWrite 屬性設定為指定,以及呼叫 GetBuffer() 設定為指定的功能。

MemoryStream()

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

使用可擴充容量初始化為零,初始化 MemoryStream 類別的新實例。

public:
 MemoryStream();
public MemoryStream ();
Public Sub New ()

備註

CanReadCanSeekCanWrite 屬性都設定為 true

當您使用 SetLength 方法將長度設定為大於目前數據流容量的值時,目前數據流的容量會自動增加。

此建構函式會公開 GetBuffer 傳回的基礎數據流。

另請參閱

適用於

MemoryStream(Byte[])

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

根據指定的位元組陣列,初始化 MemoryStream 類別的新不可重設大小實例。

public:
 MemoryStream(cli::array <System::Byte> ^ buffer);
public MemoryStream (byte[] buffer);
new System.IO.MemoryStream : byte[] -> System.IO.MemoryStream
Public Sub New (buffer As Byte())

參數

buffer
Byte[]

要從中建立目前數據流的不帶正負號位元組陣列。

例外狀況

buffer null

備註

CanReadCanSeekCanWrite 屬性都設定為 trueCapacity 會設定為指定位元組數位的長度。 新的數據流可以寫入,但無法重設大小。

數據流的長度不能設定為大於指定位元組陣列之初始長度的值;不過,數據流可以截斷(請參閱 SetLength)。

此建構函式不會公開基礎數據流。 GetBuffer 會擲回 UnauthorizedAccessException

另請參閱

適用於

MemoryStream(Int32)

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

使用已指定初始化的可擴充容量,初始化 MemoryStream 類別的新實例。

public:
 MemoryStream(int capacity);
public MemoryStream (int capacity);
new System.IO.MemoryStream : int -> System.IO.MemoryStream
Public Sub New (capacity As Integer)

參數

capacity
Int32

內部陣列的初始大小,以位元組為單位。

例外狀況

capacity 為負數。

範例

此程式代碼範例是提供給 MemoryStream 類別之較大範例的一部分。

MemoryStream^ memStream = gcnew MemoryStream( 100 );
using(MemoryStream memStream = new MemoryStream(100))
Dim memStream As New MemoryStream(100)

備註

CanReadCanSeekCanWrite 屬性都設定為 true

當您使用 SetLength 方法將長度設定為大於目前數據流容量的值時,容量會自動增加。 除了使用 byte[] 參數建構的 MemoryStream 之外,MemoryStream 結尾的寫入作業會展開 MemoryStream

此建構函式會公開 GetBuffer 傳回的基礎數據流。

另請參閱

適用於

MemoryStream(Byte[], Boolean)

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

根據指定的位元組陣列,初始化 MemoryStream 類別的新不可重設大小實例,並將 CanWrite 屬性設定為指定。

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, bool writable);
public MemoryStream (byte[] buffer, bool writable);
new System.IO.MemoryStream : byte[] * bool -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), writable As Boolean)

參數

buffer
Byte[]

要從中建立此數據流的不帶正負號位元組陣列。

writable
Boolean

CanWrite 屬性的設定,決定數據流是否支援寫入。

例外狀況

buffer null

備註

CanReadCanSeek 屬性都設定為 trueCapacity 會設定為指定位元組數位的長度。

數據流的長度不能設定為大於指定位元組陣列之初始長度的值;不過,數據流可以截斷(請參閱 SetLength)。

此建構函式不會公開基礎數據流。 GetBuffer 會擲回 UnauthorizedAccessException

另請參閱

適用於

MemoryStream(Byte[], Int32, Int32)

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

根據位元組數位的指定區域(index),初始化 MemoryStream 類別的新不可重設大小實例。

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, int index, int count);
public MemoryStream (byte[] buffer, int index, int count);
new System.IO.MemoryStream : byte[] * int * int -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), index As Integer, count As Integer)

參數

buffer
Byte[]

要從中建立此數據流的不帶正負號位元組陣列。

index
Int32

buffer 開始數據流的索引。

count
Int32

以位元組為單位的數據流長度。

例外狀況

buffer null

indexcount 小於零。

緩衝區長度減去 index 小於 count

備註

CanReadCanSeekCanWrite 屬性都設定為 true,但容量無法變更。 Capacity 設定為 count

數據流的長度不能設定為大於指定位元組陣列之初始長度的值;不過,數據流可以截斷(請參閱 SetLength)。

此建構函式不會公開基礎數據流。 GetBuffer 會擲回 UnauthorizedAccessException。 不過,您可以寫入數據流。

另請參閱

適用於

MemoryStream(Byte[], Int32, Int32, Boolean)

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

根據位元組陣列的指定區域,初始化 MemoryStream 類別的新不可重設大小實例,並將 CanWrite 屬性設定為指定。

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, int index, int count, bool writable);
public MemoryStream (byte[] buffer, int index, int count, bool writable);
new System.IO.MemoryStream : byte[] * int * int * bool -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), index As Integer, count As Integer, writable As Boolean)

參數

buffer
Byte[]

要從中建立此數據流的不帶正負號位元組陣列。

index
Int32

buffer 中開始數據流的索引。

count
Int32

以位元組為單位的數據流長度。

writable
Boolean

CanWrite 屬性的設定,決定數據流是否支援寫入。

例外狀況

buffer null

indexcount 為負數。

緩衝區長度減去 index 小於 count

備註

CanReadCanSeek 屬性都設定為 trueCapacity 設定為 count

數據流的長度不能設定為大於指定位元組陣列之初始長度的值;不過,數據流可以截斷(請參閱 SetLength)。

此建構函式不會公開基礎數據流。 GetBuffer 會擲回 UnauthorizedAccessException。 不過,如果 writabletrue,您可以寫入數據流。

另請參閱

適用於

MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)

來源:
MemoryStream.cs
來源:
MemoryStream.cs
來源:
MemoryStream.cs

根據位元組陣列的指定區域,初始化 MemoryStream 類別的新實例,並將 CanWrite 屬性設定為指定,以及呼叫 GetBuffer() 設定為指定的功能。

public:
 MemoryStream(cli::array <System::Byte> ^ buffer, int index, int count, bool writable, bool publiclyVisible);
public MemoryStream (byte[] buffer, int index, int count, bool writable, bool publiclyVisible);
new System.IO.MemoryStream : byte[] * int * int * bool * bool -> System.IO.MemoryStream
Public Sub New (buffer As Byte(), index As Integer, count As Integer, writable As Boolean, publiclyVisible As Boolean)

參數

buffer
Byte[]

要從中建立此數據流的不帶正負號位元組陣列。

index
Int32

buffer 開始數據流的索引。

count
Int32

以位元組為單位的數據流長度。

writable
Boolean

CanWrite 屬性的設定,決定數據流是否支援寫入。

publiclyVisible
Boolean

true 啟用 GetBuffer(),這會傳回建立數據流的來源不帶正負號位元組陣列;否則,false

例外狀況

buffer null

indexcount 為負數。

緩衝區長度減去 index 小於 count

備註

CanReadCanSeek 屬性都設定為 trueCapacity 設定為 count

您可以寫入新的數據流實例,但無法變更基礎位元組陣列的 Capacity。 數據流的長度不能設定為大於指定位元組陣列之初始長度的值;不過,數據流可以截斷(請參閱 SetLength)。

另請參閱

適用於