Sdílet prostřednictvím


SqlDataReader.GetBytes(Int32, Int64, Byte[], Int32, Int32) Metoda

Definice

Načte stream bajtů ze zadaného posunu sloupce do vyrovnávací paměti pole počínaje daným posunem vyrovnávací paměti.

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

Parametry

i
Int32

Řadový sloupec založený na nule.

dataIndex
Int64

Index v poli, ze kterého se má zahájit operace čtení.

buffer
Byte[]

Vyrovnávací paměť, do které se má číst proud bajtů.

bufferIndex
Int32

Index v rámci místa buffer , kde má být spuštěna operace zápisu.

length
Int32

Maximální délka kopírování do vyrovnávací paměti.

Návraty

Skutečný počet přečtených bajtů.

Implementuje

Poznámky

GetBytes vrátí počet dostupných bajtů v poli. Většinou se jedná o přesnou délku pole. Vrácené číslo však může být menší než skutečná délka pole, pokud GetBytes již bylo použito k získání bajtů z pole. To může být například případ, kdy SqlDataReader objekt načítá velkou datovou strukturu do vyrovnávací paměti. Další informace najdete v SequentialAccess nastavení pro CommandBehavior.

Pokud předáte vyrovnávací paměť null, GetBytes vrátí délku celého pole v bajtech, nikoli zbývající velikost na základě parametru posunu vyrovnávací paměti.

Nejsou provedeny žádné převody; Proto načtená data již musí být bajtové pole.

Platí pro