Pegar o tamanho de um arquivo (em bytes)

Delphi

05/11/2003

Aê galera :!: ,

gostaria de saber como pegar o tamanho em bytes (kbyte, mbyte) de um arquivo ou vários arquivos em uma pasta definida na aplicação? :cry: :?: :?:
preciso p/ fazer um trabalho semestral.
valeu pela atenção!!!!
abraços[/b]


Darkburn

Darkburn

Curtidas 1

Melhor post

Basilio.sp

Basilio.sp

05/11/2003

Caro darkburn,

Complementando minha resposta anterior, um outro código como o abaixo também poderia ser utilizado:

procedure TForm1.Button1Click(Sender: TObject);
var
myFile: file of Byte; // Utilizando file of byte, o tratamento do arquivo
// pode ser genérico, sem se preocupar se o mesmo é texto ou exe
myFileSize: Longint; // LongInt para garantir que arquivos muito longos
// também sejam tratados
begin
if OpenDialog1.Execute then
begin
AssignFile(myFile, OpenDialog1.FileName); // Cria um ponteiro
Reset(myFile); // Abre o arquivo como somente leitura
myFileSize := FileSize(myFile); // Obtém o tamanho do arquivo
ShowMessage (IntToStr (FileSize (myFile)); // Exibe o tamanho
end;
end;

end.


GOSTEI 1

Mais Respostas

Basilio.sp

Basilio.sp

05/11/2003

Caro darkburn,

Creio que o código abaixo possa ajudá-lo:

procedure TForm1.Button1Click(Sender: TObject);
var
FileHandle: Integer; // handle para controle de abertura do arquivo
FileLength: Integer; // variável para armazenamento do tamanho
begin
if OpenDialog1.Execute then // Coloque um OpenDialog e um Button
// no Form
// Este código deve ser digitado no evento OnClick do Button

begin

// A linha abaixo abre o arquivo e define um handle para o mesmo
FileHandle := FileOpen(OpenDialog1.FileName, fmOpenRead);

// Na linha abaixo, nos deslocamos para o fim do arquivo, obtendo o
// total de bytes obtidos neste deslocamento
FileLength := FileSeek(iFileHandle,0,2);

// Abaixo, imprimimos o tamanho do arquivo
ShowMessage (IntToStr (FileLength));

// Voltamos ao começo do arquivo (dispensável, apenas um exemplo)
FileSeek(iFileHandle,0,0);

// Fechamos o mesmo
FileClose(iFileHandle);

end;

end.


GOSTEI 1
Darkburn

Darkburn

05/11/2003

Valeu pela ajuda! Foi de grande ajuda... obrigado mesmo!

Uirá Haun


GOSTEI 1
POSTAR