Saltar para o conteúdo principal
Versão: 21 R4 BETA

BLOB to integer

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

ParâmetroTipoDescrição
BlobBlob→BLOB do qual obter o valor inteiro
byteOrdemInteger→0 Ordem de bytes nativo 1 Ordem de bytes Macintosh 2 Ordem de bytes PC
offsetVariable↔Offset no BLOB (expressado em bytes)
Novo offset depois da leitura
Resultado da funçãoInteger←Valor inteiro (2 bytes)
Histórico
VersãoAlterações
6Criado por

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-seguroyes