Saltar para o conteúdo principal
Versão: 20 R7 BETA

BLOB to integer

BLOB to integer ( BLOB ; byteOrdem {; offset} ) : Integer

ParâmetroTipoDescrição
BlobBlobBLOB do qual obter o valor inteiro
byteOrdemInteger0 Ordem de bytes nativo 1 Ordem de bytes Macintosh 2 Ordem de bytes PC
offsetVariableOffset no BLOB (expressado em bytes)
Novo offset depois da leitura
Resultado da funçãoIntegerValor inteiro (2 bytes)

Descrição

O comando BLOB to integer retorna um valor inteiro de 2 bytes inteiro lido do BLOB blob.

O parâmetro byteOrdem fixa a ordenação de bytes de valor de 2 bytes inteiro a ser lido. Você passa uma das seguintes constantes pré-definidas fornecidas por 4D:

ConstanteTipoValor
Native byte orderingInteiro longo0
Macintosh byte orderingInteiro longo1
PC byte orderingInteiro longo2

Nota sobre a independência de plataforma: Se você intercambiar BLOBs entre as plataformas Macintosh e PC, cabe a você a gerenciar os problemas da troca de bytes ao usar este comando.

Se você especificar o parâmetro opcional offset , o valor inteiro de 2-byte é lido no offset (a partir de zero) dentro do BLOB. Se você não especificar o parâmetro opcional offset, os dois primeiros bytes do BLOB são lidos.

Nota: Você deve passar um offset (em bytes) entre 0 (zero) e o tamanho do BLOB menos 2. Se você não fizer isso, um erro -111 é gerado.

Após a chamada, a variável é incrementada pelo número de bytes lidos, portanto, você pode reutilizar a mesma variável com outro comando de leitura BLOB para ler outro valor.

Exemplo

O exemplo a seguir lê 20 valores inteiros de um BLOB, iniciando no offset 0x200:

 $vlOffset:=0x200
 For($viLoop;0;19)
    $viValor:=BLOB to integer(vxUnBlob;PC byte ordering;$vlOffset)
  // Fazer algo com $viValor
 End for

Ver também

BLOB to longint
BLOB to real
BLOB to text
INTEGER TO BLOB
LONGINT TO BLOB
REAL TO BLOB
TEXT TO BLOB

Propriedades

Número do comando549
Thread-seguro