FRead [AS]

FRead [AS]
Author: Eurai
Inclusão: 01/01/2016
Alteração: 22/07/2021

Descrição

Lê caracteres de um arquivo binário para uma variável de buffer.

 

Sintaxe

FRead( <nHandle>, <cBufferVar>, <nQtdBytes> )

 

Parâmetros


Par Nome Tipo Descrição Default Obg Ref
01
nHandle
Numérico
Indica o handle do arquivo obtido pelas funções FOpen(), FCreate() ou pré-definido pelo DOS – Disk Operating System
  X  
02  cBufferVar Caracter  Indica o nome de uma variável do tipo caractere. Essa variável é utilizada como buffer de leitura, para que os dados lidos sejam armazenados. O tamanho desta variável deve ser maior ou igual ao tamanho informado no parâmetro   X  
03  nQtdBytes Numérico  Indica a quantidade de bytes que devem ser lidos do arquivo a partir do posicionamento do ponteiro atual   X  

 

Retorno

Retorno Tipo Descrição
nRet Numérico
Retorna a quantidade de bytes lidos na forma de um valor numérico inteiro. Um valor de retorno menor <nQtdBytes> ou 0 (zero) indica final de arquivo ou algum erro de leitura. Para obter mais detalhes, utilize a função FError()..

 

Exemplo

#INCLUDE "TOTVS.CH"
#INCLUDE 'FILEIO.CH'

User Function FRead()
Local cString := ''
Local nHandle := fOpen('\TEST.TXT' , FO_READWRITE + FO_SHARED )

If nHandle == -1
 MsgStop('Erro de abertura : FERROR ' + Str(fError(), 4), 'UniversoADVPL' )
Else
 
 cString := FRead( nHandle, cString, 1024 )
 
 fclose(nHandle) // Fecha arquivo
 
Endif

 
Return( Nil )

Resultado
fread_-_resultado_01                                       

 

 

Informações adicionais

Lê os dados a partir de um arquivo aberto, através das funções FOpen() e FCreate(), e armazena os dados por referência no buffer informado

Lê até o número de bytes informado no parâmetro <nQtdBytes>; caso aconteça algum erro ou o arquivo chegue ao final, a função retorna um número menor que o especificado

Lê normalmente caracteres de controle (ASC 128, ASC 0, etc.)

A variável string que será utilizada como buffer de leitura deve ser sempre pré-alocada e passada como referência. Caso contrário, os dados não poderão ser retornados

Realiza a leitura a partir da posição atual do ponteiro do arquivo, que pode ser ajustado ou modificado pelas funções FSeek(), FWrite() ou FReadStr()

 

 

 

 

 

Gostou? Compartilhe com seus amigos e deixe um comentário! 😎  

 

 

 

 

 

 

 

Esse conteúdo te ajudou? Ajude o canal com doação
Compartilhar
Comentários