SqlDataReader.GetChars(Int32, Int64, Char[], Int32, Int32) メソッド

定義

指定されたバッファー オフセットから始まる配列として、指定した列オフセットからバッファーに文字のストリームを読み取ります。

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

パラメーター

i
Int32

0 から始まる列の序数。

dataIndex
Int64

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

buffer
Char[]

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

bufferIndex
Int32

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

length
Int32

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

返品

読み取られた実際の文字数。

実装

注釈

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

フィールドの末尾に達した場合、読み取られる実際の文字数は、要求された長さよりも小さくすることができます。 nullバッファーを渡すと、GetCharsはバッファー オフセット パラメーターに基づく残りのサイズではなく、フィールド全体の長さを文字で返します。

変換は実行されません。そこで。 取得するデータは、既に文字配列である必要があります。

Note

dataIndexが負の場合、GetChars メソッドは 0 を返します。

適用対象

こちらもご覧ください