GARANTIR DESCONTO

Fórum 1ª Linha Arquivo Texto !!! #176741

22/08/2003

0

Ola Pessoal, estou com dificuldade em resolver um problema. Tenho um código que le um arquivo .txt e passa para uma memo. O problema é que a 1ª linha do arquivo não aparece na memo, onde esta o erro,? ao ler ou ao passar p/ a memo?

Código Abaixo:

[color=green:328723cd9b]

Var
Linha, Arquivo: String;
Arq: TextFile;

Begin
AssignFile(arq, Arquivo);
Reset (arq);
ReadLn (arq, linha);

while not Eof (arq) do
Begin
ReadLn (arq, linha);
if linha <> ´´ then
Memo1.Lines.Add(Linha);
end;
CloseFile ( arq );
end;
[/color:328723cd9b][quote:328723cd9b][/quote:328723cd9b]


Alves

Alves

Responder

Posts

22/08/2003

Nildo

Faz assim:

Memo1.lines.loadFromFile(´SeuArquivo.txt´);


Responder

Gostei + 0

22/08/2003

Alves

Tbem pode ser feito isso, mas preciso carregar a partir da variável, pq é preciso eliminar as linha que estão em ´branco´.

Faz assim: Memo1.lines.loadFromFile(´SeuArquivo.txt´);



Responder

Gostei + 0

22/08/2003

Cebikyn

... é preciso eliminar as linha que estão em ´branco´.


Então use o código do Nildo juntamente com:

var
  x: integer;
begin
  for x:=0 to Memo1.Lines.Count-1 do
    if (Memo1.Lines[x] = ´´)
    then
      Memo1.Lines.Delete(x);
end;



Responder

Gostei + 0

22/08/2003

Nildo

Esqueceu do Trim na checagem se a linha esta em branca. As vezes tem espaços ou o memo pode nao entender o #1013 como ´´ (vazio).


Responder

Gostei + 0

22/08/2003

Pgarcia

Vc chama um readln antes de entrar no while e depois chama de novo. Só ai vc coloca no memo. Isso faz com que a linha lida pelo ReadLn de fora do while seja perdida.

Para solucionar, inverta o ReadLn de dentro do while com o if:

while not Eof (arq) do
Begin
if linha <> ´´ then
Memo1.Lines.Add(Linha);
ReadLn (arq, linha);
end;
CloseFile ( arq );


[]´s
Paulo


Responder

Gostei + 0

22/08/2003

Alves

Vivendo e Aprendendo...
vou fazer os testes...

Agradeço a todos vocês pela ajuda.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar