Sintaxe

 

FREADSTR( <expressão numérica 1>,  <expressão numérica 2> )

 

Propósito

 

Lê caracteres de um arquivo binário, fornecendo uma cadeia de caracteres de até 65.536 bytes (64 K).

 

Argumentos

 

< expressão numérica 1>

 

Define o número de manipulação que identifica o arquivo binário a ser lido. Este número é obtido pelas funções FOPEN() ou FCREATE().

 

< expressão numérica 2>

 

Define o número de bytes a serem lidos, iniciando-se da posição atual do ponteiro de arquivos.

 

Utilização

 

Uma cadeia de caracteres nula (“”) indicará que houve algum erro ou que foi encontrado o fim do arquivo.

 

A partir da posição atual do ponteiro de arquivos binários, a função FREADSTR() lê o número de bytes (caracteres) especificados pela expressão numérica 2, ou até que seja encontrado um caracter nulo CHR(0). Como acontece com a função FREAD(), todos os caracteres são lidos, incluindo os de alto nível (acima do ASCII 127) e os de controle, exceto o caracter nulo CHR(0), que finaliza a leitura da função FREADSTR().

 

Cada caracter lido move o ponteiro de arquivos em uma posição. Se o número especificado na expressão numérica 2 for maior que o número de bytes existentes no arquivo, a partir da posição atual do ponteiro até o final do arquivo, o ponteiro será posicionado no final do arquivo.

 

Exemplos

 

O exemplo abaixo exibe os códigos ASCII dos 16 primeiros bytes de um arquivo texto:

 

#include "Fileio.ch"

 

FUNCTION LerArq()

 

LOCAL nHandle := FOPEN("New.txt", FC_NORMAL)

LOCAL cString   := “”

 

IF FERROR() <> 0

          MsgAlert("Erro de abertura: " + STR(FERROR()))

 

          BREAK

ELSE

          cString := FREADSTR(nHandle, 16)

 

          MsgAlert(cString)

 

          FCLOSE(nHandle)

ENDIF

 

  • Sem rótulos