Lê caracteres de um arquivo binário para uma variável de buffer.
Sintaxe
FRead( < nHandle >, < cBufferVar >, < nQtdBytes > )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
nHandle | numérico | Indica o handle do arquivo obtido pelas funções FOpen(), FCreate(). | X |
|
cBufferVar | caractere | 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 |
|
nQtdBytes | numérico | Indica a quantidade de bytes que devem ser lidos do arquivo a partir do posicionamento do ponteiro atual. | X |
|
Retorno
Nome | 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(). |
Observações
- 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().
Exemplos
#include 'fileio.ch'... User Function exemplo() nHandle := fopen('c:\garbage\test.txt' , FO_READWRITE + FO_SHARED ) cString := "" FRead( nHandle, cString, 10 ) // Lê os primeiros 10 bytes do arquivo MsgAlert( cString ) Return