SqlDataReader.GetBytes(Int32, Int64, Byte[], Int32, Int32) メソッド

定義

指定したバッファー オフセットから始まる配列に、指定した列オフセットからバイトストリームを読み取ります。

public:
 virtual long GetBytes(int i, long dataIndex, cli::array <System::Byte> ^ buffer, int bufferIndex, int length);
public:
 override long GetBytes(int i, long dataIndex, cli::array <System::Byte> ^ buffer, int bufferIndex, int length);
public long GetBytes(int i, long dataIndex, byte[] buffer, int bufferIndex, int length);
public override long GetBytes(int i, long dataIndex, byte[] buffer, int bufferIndex, int length);
abstract member GetBytes : int * int64 * byte[] * int * int -> int64
override this.GetBytes : int * int64 * byte[] * int * int -> int64
override this.GetBytes : int * int64 * byte[] * int * int -> int64
Public Function GetBytes (i As Integer, dataIndex As Long, buffer As Byte(), bufferIndex As Integer, length As Integer) As Long
Public Overrides Function GetBytes (i As Integer, dataIndex As Long, buffer As Byte(), bufferIndex As Integer, length As Integer) As Long

パラメーター

i
Int32

0 から始まる列の序数。

dataIndex
Int64

読み取り操作を開始するフィールド内のインデックス。

buffer
Byte[]

バイトストリームを読み取るバッファー。

bufferIndex
Int32

書き込み操作を開始する buffer 内のインデックス。

length
Int32

バッファーにコピーする最大長。

返品

読み取られた実際のバイト数。

実装

注釈

GetBytes は、フィールド内の使用可能なバイト数を返します。 ほとんどの場合、これはフィールドの正確な長さです。 ただし、 GetBytes がフィールドからバイトを取得するために既に使用されている場合は、返される数がフィールドの実際の長さよりも小さい場合があります。 たとえば、 SqlDataReader が大きなデータ構造をバッファーに読み取る場合などです。 詳細については、SequentialAccessCommandBehavior設定を参照してください。

nullバッファーを渡すと、GetBytesはバッファー オフセット パラメーターに基づく残りのサイズではなく、フィールド全体の長さをバイト単位で返します。

変換は実行されません。したがって、取得されるデータは既にバイト配列である必要があります。

適用対象

こちらもご覧ください