Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

Versão 1 Próxima »

Função: FT_FReadLn

Lê e retorna uma linha de texto do arquivo aberto pela função FT_FUse(). As linhas do texto, são delimitadas pela sequência de caracteres CRLF (chr(13)+chr(10)) ou apenas LF (chr(10)), e o tamanho máximo de cada linha é 1022 bytes.

FT_FReadLn ( ) --> cRet

    cRet(caracter)
  • Retorna a linha inteira na qual está posicionado o ponteiro para leitura de dados.
  • A utilização desta função não altera a posição do ponteiro para leitura dos dados, pois o ponteiro do arquivo não é movido. No entanto, caso seja necessário alterar, utilize a função FT_FSkip().
  • O limite de 1022 bytes por linha inclui os caracteres delimitados de final de linha. Deste modo, quando utilizamos os separadores CRLF e LF, é possível ter 1020 bytes de texto (CRLF) ou 1021 bytes (LF). Porém, ao tentar realizar a leitura do arquivo, com linha de texto maior que o especificado, o resultado será de 1023 bytes e a incorreta identificação das posteriores quebras de linhas. 
  • As funções FT_F* foram desenvolvidas para lerem arquivos com o conteúdo apenas texto. Ao utilizar em arquivos binários, o comportamento pode ser inesperado na movimentação do ponteiro de leitura e na identificação dos separadores de final de linha.

 

Dica
Ao utilizar essa função, no Application Server, com build superior a 7.00.050713P, é possível ler arquivo/ASCII que utiliza caractere LF (chr(10)) como separador de linha.
// Abre o arquivonHandle := FT_FUse("c:\garbage\test.txt")// Se houver erro de abertura abandona processamentoif nHandle = -1  returnendif// Posiciona na primeria linhaFT_FGoTop()// Retorna o número de linhas do arquivonLast := FT_FLastRec()MsgAlert( nLast )While !FT_FEOF()   cLine  := FT_FReadLn() // Retorna a linha corrente  nRecno := FT_FRecno()  // Retorna o recno da Linha  MsgAlert( "Linha: " + cLine + " - Recno: " + StrZero(nRecno,3) )    // Pula para próxima linha  FT_FSKIP()End// Fecha o ArquivoFT_FUSE()
Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server

  • Sem rótulos