import.css=/download/attachments/327912/newLayout.css
Classe: FWFileReader


Compatível Países:Todos
Sistemas Operacionais:Todos
Compatível às Bases de Dados:Todos
Nível de Acesso:Nível 1 (Acesso Clientes)
Idiomas:Português, Inglês, Espanhol


Descrição
Classe de auxilo de leitura de arquivo texto,por linhas.
Lê sempre um buffer fixo, permitindo leitura de linha sem honerar o IO.
Essa classe permite transformar o arquivo inteiro em um array de
linhas, pelo método getAllLines.
Permite leitura de CRLF, LF ou conforme parâmetro enviado no método New.
Lembre-se sempre de utilizar o o método Close, ao fechar o arquivo.
   

Exemplo

Static function LeArquivo(cFile)
Local oFile
oFile := FWFileReader():New(cFile)
if (oFile:Open())
   while (oFile:hasLine())
      Conout(oFile:GetLine())
   end
   oFile:Close()
endif

Return

New

Sintaxe
FWFILEREADER():New(<cFileName >)-> NIL

Descrição
Método construtor da classe

Parâmetros


NomeTipoDescriçãoDefaultObrigatórioReferência
cFileNameCaracteresNome do arquivo, deve-se informar o path completo
X
xBreakLineCaracterQuebra de linhaNil


 
GetLine

Sintaxe
FWFILEREADER():GetLine(<lRetunCr >)-> cLine

Descrição
Efetua a leitura de uma linha do arquivo, é esperado \n ou \r\n.

Parâmetros


NomeTipoDescriçãoDefaultObrigatórioReferência
lRetunCrLógicoSe .t. retorna na string o caracter de pulo de linha, default é .f..F.X


 

Retorno
cLine Linha lida
EOF

Sintaxe
FWFILEREADER():EOF()-> lEOF

Descrição
Retorna .T. se o arquivo estiver em EOF (End of File)
Este método só deve ser utilizado caso estiver fazendo a leitura via método Read,
Caso esteja lendo via Getline utilize o método hasLine() para saber se já foi lido
todo o arquivo.

Retorno
lEOF .T. se estiver em EOF
getAllLines

Sintaxe
FWFILEREADER():getAllLines()-> aLines

Descrição
Retorna todas as linhas do arquivo em um Array unidimensional

Retorno
aLines Array Contendo as linhas
getFileSize

Sintaxe
FWFILEREADER():getFileSize()-> nSize

Descrição
Retorna O tamanho do arquivo em bytes

Retorno
nSize Tamanho do arquivo em bytes
getBytesRead

Sintaxe
FWFILEREADER():getBytesRead()-> nSize

Descrição
Retorna o numero de bytes lido ate o momento, esta função retorna o
que foi lido ao buffer, ou seja, aquilo que foi lido via FRead

Retorno
nSize Quantidade de bytes lido ate o momento
hasLine

Sintaxe
FWFILEREADER():hasLine()-> lHasLine

Descrição
Retorna .T. se o arquivo estiver linhas a serem lidas no arquivo ou no buffer
interno.
Este método equivale ao EOF quando estamos utilizando leitura por byte
Retorno
lHasLine Se .T. ainda temos linhas no arquivo para serem lidas