Delphi 获得文件大小的五种方法

Delphi 获得文件大小的方法 大概有这些:

  •   FileSizeByName(需要引用IdGlobal单元 ,XE版本已取消) 
  •   GetFileSize (use Windows ,仅支持windows
  •   FileSize(不能获得正在使用的文件大小) 
  •   FileSeek 
  •   TFileStream.Size 


使用例子 :
1、FileSizeByName(需要引用IdGlobal单元,XE版本已取消) 

if OpenDialog1.Execute then 
begin 
  ShowMessage(IntToStr(FileSizeByName(OpenDialog1.Filename))); 
end; 

2、GetFileSize (use Windows ,仅支持windows

var 
FileHandle:integer; 
begin 
if OpenDialog1.Execute then 
begin 
  FileHandle := FileOpen(OpenDialog1.FileName, 0); 
  ShowMessage(IntToStr(GetFileSize(FileHandle, nil))); 
  FileClose(FileHandle); 
end; 
end;

3、FileSize(不能获得正在使用的文件大小) 

var f: file; 
begin 
if OpenDialog1.Execute then 
begin 
  AssignFile(f, OpenDialog1.FileName); 
  Reset(f, 1); 
  ShowMessage(IntToStr(FileSize(f))); 
  CloseFile(f); 
end; 
end;

4、FileSeek 

var 
FileHandle:integer; 
begin 
if OpenDialog1.Execute then 
begin 
  FileHandle := FileOpen(OpenDialog1.FileName, 0); 
  ShowMessage(IntToStr(FileSeek(FileHandle,0,2))); 
  FileClose(FileHandle); 
end; 
end;

5、TFileStream.Size 

var 
FS: TFileStream; 
begin 
if OpenDialog1.Execute then begin 
  FS := TFileStream.Create(OpenDialog1.FileName, fmShareDenyNone); 
  ShowMessage(IntToStr(FS.Size)); 
  FS.Free; 
end;
end;

另在IdGlobalProtocols中有个FileSizeByName()的函数。

 

 

创建时间:2015-05-01  更新时间:2020.01.02、2022.08.25

来源于:https://www.cnblogs.com/guorongtao/p/4470185.html

posted on 2015-05-01 00:27  滔Roy  阅读(2416)  评论(0编辑  收藏  举报

导航