21/09/2004

Nº Linhas de um Arquivo TXT - Urgente...

Como faço pra jogar no MaxValue de um ProgressBar o nº de linhas de um arquivo txt ?

Valeu ....


Diegus

Respostas

21/09/2004

Beppe

Crie uma string list:
with TStringList.Create do
try
  LoadFromFile(Nome_Do_Arquivo);
  ProgressBar1.MaxValue := Count;
finally
  Free;
end;


Se você já tiver uma string list criada com o conteúdo, ou então em um memo, pode usar a própria:
ProgressBar1.MaxValue := Memo1.Lines.Count;



Responder Citar

21/09/2004

Mago M3rl1n

Voce pode ler o arquivo para uma TStringlist e setar o MaxValue com a propriedade Count da TStringList.

var
arquivo: TStringList;
begin
Arquivo := TStringList.Create;
try
Arquivo.LoadFromFile(Nome do arquivo texto);
ProgressBar.MaxValue := Arquivo.Count;
finally
FreeAndNil(Arquivo);
end;


Responder Citar

21/09/2004

Diegus

[quote:cc90149710=´Mago M3rl1n´]Voce pode ler o arquivo para uma TStringlist e setar o MaxValue com a propriedade Count da TStringList.

var
arquivo: TStringList;
begin
Arquivo := TStringList.Create;
try
Arquivo.LoadFromFile(Nome do arquivo texto);
ProgressBar.MaxValue := Arquivo.Count;
finally
FreeAndNil(Arquivo);
end;[/quote:cc90149710]

E usando um TextFile? Como faria? Essas respostas ja me ajudaram... mas gostaria de saber com TextFile?


Responder Citar

21/09/2004

Aroldo Zanela

Colega,

Com TextFile é necessário ler todo o arquivo e incrementar um contador linha a linha. No entanto, se o arquivo possui registros de tamanho fixo, é pegar o total de bytes e dividir pelo comprimento do registro + CR e LF.


Responder Citar