SqlDataReader.GetChars(Int32, Int64, Char[], Int32, Int32) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
從指定的資料行位移將字元資料流讀取到緩衝區中,作為以指定緩衝區位移開頭的陣列。
public:
override long GetChars(int i, long dataIndex, cli::array <char> ^ buffer, int bufferIndex, int length);
public override long GetChars (int i, long dataIndex, char[] buffer, int bufferIndex, int length);
override this.GetChars : int * int64 * char[] * int * int -> int64
Public Overrides Function GetChars (i As Integer, dataIndex As Long, buffer As Char(), bufferIndex As Integer, length As Integer) As Long
參數
- i
- Int32
以零為基底的資料行序數。
- dataIndex
- Int64
欄位內開始讀取作業的索引。
- buffer
- Char[]
要將位元組資料流讀取到其中的緩衝區。
- bufferIndex
- Int32
buffer
內寫入作業開始之處的索引。
- length
- Int32
複製入緩衝區的最大長度。
傳回
讀取的實際字元數目。
實作
備註
GetChars 會傳回欄位中可用的字元數。 這通常是欄位的確切長度。 但是,如果已使用 GetChars
從欄位取得字元數,則傳回的數字可能小於欄位的實際長度。 例如,如果 SqlDataReader 正在將大型資料結構讀入緩衝區,則可能是這種情況。 如需詳細資訊,請參閱 SequentialAccess
的 CommandBehavior 設定。
如果達到欄位結尾,讀取的實際字元數可以小於要求的長度。 如果您傳遞的緩衝區為 null
, GetChars 則會以字元傳回整個欄位的長度,而不是根據緩衝區位移參數的剩餘大小。
不會執行轉換;因此。 擷取的資料必須已經是字元陣列。
注意
當 為負數時 dataIndex
,方法 GetChars 會傳回 0。