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

BLOB to real

BLOB to real ( BLOB ; formatoReal {; offset} ) -> Resultado

ParâmetroTipoDescrição
BlobBlobBLOB do qual obter o valor de tipo Real
formatoRealInteger0 Formato real nativo 1 Formato real extendido 2 Formato real duplo Macintosh 3 Formato real duplo Windows
offsetVariableOffset no BLOB (expressado em bytes)
Novo offset depois da leitura
ResultadoRealValor real

Descrição

O comando BLOB to real retorna um valor Real lido a partir do BLOB blob.

O parâmetro formatoReal corrige o formato interno e ordenação de bytes do valor real a ser lido. Você passa uma das seguintes constantes pré-definidas fornecidas por 4D:

ConstanteTipoValor
Native real formatInteiro longo0
Extended real formatInteiro longo1
Macintosh double real formatInteiro longo2
PC double real formatInteiro longo3

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

Se você especificar o parâmetro opcional offset, o valor Real é lido no offset (a partir de zero) dentro do BLOB. Se você não especificar o parâmetro opcional offset, os primeiros 8 ou 10 bytes do BLOB são lidos.

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

 $vlOffset:=0x200
 For($viLoop;0;19)
    $vrValor:=BLOB to real(vxSomeBlob;PC byte ordering;$vlOffset)
  // Fazer algo com $vrValor
 End for

Ver também

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