BLOB to integer
BLOB to integer ( BLOB ; byteOrder {; offset} ) : Integer
引数 | 型 | 説明 | |
---|---|---|---|
Blob | Blob | → | 整数値を取り出すBLOB |
byteOrder | Integer | → | 0 Native byte ordering 1 Macintosh byte ordering 2 PC byte ordering |
offset | Variable | ↔ | BLOB中のオフセット (バイト単位) |
読み込み後、新しいオフセット | |||
戻り値 | Integer | ← | 2バイト整数値 |
説明
BLOB to integer コマンドは、blob BLOBから2バイトの整数値を読み込み、その値を返します。
byteOrder引数は、読み込む2バイト整数値のバイトオーダーを指定します。4Dが提供する以下の定義済み定数のうち、いずれかを渡します:
定数 | 型 | 値 |
---|---|---|
Macintosh byte ordering | 倍長整数 | 1 |
Native byte ordering | 倍長整数 | 0 |
PC byte ordering | 倍長整数 | 2 |
プラットフォーム独立性に関する注意
MacintoshとPCプラットフォーム間でBLOBを交換する場合、このコマンドを使用する際のバイトスワップの管理は開発者に任されています。
offset引数を渡した場合、2バイト整数の値はBLOB内のオフセット(ゼロから開始)から読み込まれます。オプション引数offsetを指定しなかった場合には、BLOBの最初の2バイトが読み込まれます。
Note: 0からBLOBサイズ-2の範囲のオフセット値(バイト単位)を渡す必要があります。この範囲の値を渡さないと、エラー-111が生成されます。
呼び出し後、offset変数は、読み込まれたバイト数分だけインクリメントされます。したがって、同じoffset変数を別のBLOB読み込みコマンドにも使用し、別の値をBLOBから読みだすことができます。
例題
以下の例ではBLOBから、オフセット0x200から開始して整数値を20個読み込んでいます:
$vlOffset:=0x200
For($viLoop;0;19)
$viValue:=BLOB to integer(vxSomeBlob;PC byte ordering;$vlOffset)
// $viValueに処理を行う
End for
参照
BLOB to longint
BLOB to real
BLOB to text
INTEGER TO BLOB
LONGINT TO BLOB
REAL TO BLOB
TEXT TO BLOB