BLOB to integer
BLOB to integer ( BLOB ; byteOrden {; offset} ) : Integer
Parámetro | Tipo | Descripción | |
---|---|---|---|
Blob | Blob | → | BLOB del cual obtener el valor entero |
byteOrden | Integer | → | 0 Orden de bytes nativo 1 Orden de bytes Macintosh 2 Orden de bytes PC |
offset | Variable | ↔ | Offset en el BLOB (expresado en bytes) |
Nuevo offset después de la lectura | |||
Resultado | Integer | ← | Valor entero (2 bytes) |
Descripción
El comando BLOB to integer devuelve un valor entero (2 bytes) leído del BLOB blob.
El parámetro byteOrden fija el orden de los bytes ("byte ordering) del valor entero (2 bytes) a leer. Se pasa una de las siguientes constantes predefinidas por 4D:
Constante | Tipo | Valor |
---|---|---|
Native byte ordering | Entero largo | 0 |
Macintosh byte ordering | Entero largo | 1 |
PC byte ordering | Entero largo | 2 |
Nota sobre la independencia de plataforma: si intercambia BLOBs entre las plataformas Macintosh y PC, es su decisión administrar los temas de byte swapping cuando utilice este comando.
Si especifica la variable del parámetro opcional offset, el valor entero (2 bytes) se lee desde el offset (a partir de cero) del BLOB. Si no especifica la variable del parámetro opcional offset, se leen los dos primeros bytes del BLOB.
Nota: debe pasar un offset (en bytes) entre 0 (cero) y el tamaño del BLOB menos 2. De lo contrario se genera el error -111.
Después de llamar el comando, la variable se incrementa en el número de bytes leido. Puede reutilizar esa misma variable con otro comando de lectura de BLOBs para leer otro valor.
Ejemplo
El siguiente ejemplo lee 20 valores enteros de un BLOB, a partir del offset 0x200:
$vlOffset:=0x200
For($viLoop;0;19)
$viValor:=BLOB to integer(vxUnBlob;PC byte ordering;$vlOffset)
// Hacer algo con $viValor
End for
Ver también
BLOB to longint
BLOB to real
BLOB to text
INTEGER TO BLOB
LONGINT TO BLOB
REAL TO BLOB
TEXT TO BLOB