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