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

BLOB to longint

BLOB to longint ( BLOB ; byteOrdem {; offset} ) -> Resultado da função

ParâmetroTipoDescrição
BlobBlobBLOB do qual obter o valor inteiro longo
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çãoInteiro longoValor inteiro longo (4 bytes)

Descrição

O comando BLOB to longint retorna um valor de tipo Inteiro longo (4 bytes) lido do BLOB blob.

O parâmetro byteOrder fixa a ordem dos bytes do valor inteiro longo de 4-byte 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 4-byte é lido no offset (a partir de zero) dentro do BLOB. Se você não especificar o parâmetro opcional offset, os quatro primeiros bytes do BLOB são lidos.

Nota: Você deve passar um valor de offset entre 0 (zero) e o tamanho do BLOB menos 4. 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 Inteiro longo de um BLOB, iniciando no offset 0x200:

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

Ver também

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