Aracılığıyla paylaş


SqlDataReader.GetChars(Int32, Int64, Char[], Int32, Int32) Yöntem

Tanım

Belirtilen sütun uzaklığından arabelleğe verilen arabellek uzaklığından başlayan bir dizi olarak bir karakter akışı okur.

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

Parametreler

i
Int32

Sıfır tabanlı sütun sıralı.

dataIndex
Int64

Okuma işleminin başlatıldığı alan içindeki dizin.

buffer
Char[]

Bayt akışının okunduğu arabellek.

bufferIndex
Int32

yazma işleminin buffer başlatıldığı içindeki dizin.

length
Int32

Arabelleğe kopyalanacak maksimum uzunluk.

Döndürülenler

Okunan gerçek karakter sayısı.

Uygulamalar

Açıklamalar

GetChars alandaki kullanılabilir karakter sayısını döndürür. Bu genellikle alanın tam uzunluğudur. Ancak, alandan karakter almak için zaten kullanılmışsa GetChars , döndürülen sayı alanın gerçek uzunluğundan küçük olabilir. Örneğin, büyük bir veri yapısını bir arabelleğe okuyorsa SqlDataReader bu durum söz konusu olabilir. Daha fazla bilgi için CommandBehaviorayarına SequentialAccess bakın.

Alanın sonuna ulaşılırsa, okunan gerçek karakter sayısı istenen uzunluktan küçük olabilir. olan nullbir arabellek geçirirseniz, GetChars arabellek uzaklığı parametresine göre kalan boyutu değil, tüm alanın uzunluğunu karakterlerle döndürür.

Dönüştürme yapılmaz; Bu nedenle. alınan veriler zaten bir karakter dizisi olmalıdır.

Not

yöntemi GetChars negatif olduğunda dataIndex 0 döndürür.

Şunlara uygulanır