次の方法で共有


SqlDataReader.GetBytes メソッド

指定した列オフセットからのバイト ストリームを、配列としてバッファに読み込みます。読み込みは、指定したバッファ オフセットから開始されます。

Public Overridable Function GetBytes( _
   ByVal i As Integer, _   ByVal dataIndex As Long, _   ByVal buffer() As Byte, _   ByVal bufferIndex As Integer, _   ByVal length As Integer _) As Long Implements IDataRecord.GetBytes
[C#]
public virtual long GetBytes(inti,longdataIndex,byte[] buffer,intbufferIndex,intlength);
[C++]
public: virtual __int64 GetBytes(inti,__int64dataIndex,unsigned charbuffer __gc[],intbufferIndex,intlength);
[JScript]
public function GetBytes(
   i : int,dataIndex : long,buffer : Byte[],bufferIndex : int,length : int) : long;

パラメータ

  • i
    列の 0 から始まる序数。
  • dataIndex
    読み込みを開始するフィールド内のインデックス。
  • buffer
    バイト ストリームの読み込み先のバッファ。
  • bufferIndex
    読み込みを開始する buffer のインデックス。
  • length
    バッファにコピーする最大データ長。

戻り値

実際に読み込まれたバイト数。

実装

IDataRecord.GetBytes

解説

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

null 参照 (Visual Basic では Nothing) のバッファを渡すと、 GetBytes は、バイト単位のフィールド長を返します。

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

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

SqlDataReader クラス | SqlDataReader メンバ | System.Data.SqlClient 名前空間