加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 通过“修改日期”确定文件夹中的哪个文件是最新的?

发布时间:2020-12-15 09:05:26 所属栏目:大数据 来源:网络整理
导读:我需要扫描特定文件夹中的最新文件(基本上检查修改日期以查看哪个是最新的),但请记住,文件具有随机名称.这是我到目前为止所得到的: procedure TForm1.Button1Click(Sender: TObject);beginftp.Host := 'domain';ftp.Username := 'username';ftp.password :=
我需要扫描特定文件夹中的最新文件(基本上检查修改日期以查看哪个是最新的),但请记住,文件具有随机名称.这是我到目前为止所得到的:

procedure TForm1.Button1Click(Sender: TObject);
begin

ftp.Host := 'domain';
ftp.Username := 'username';
ftp.password := 'password';
ftp.Connect;
ftp.Put('random-filename.ext'); //This is where it should grab only the latest file  
ftp.Quit;
ftp.Disconnect;

end;

这可能吗?

谢谢!

解决方法

假设OP想要扫描特定的本地文件夹并找到最新修改的文??件,这里有一个非常简单的功能:

function GetLastModifiedFileName(AFolder: String; APattern: String = '*.*'): String;
var
  sr: TSearchRec;
  aTime: Integer;
begin
  Result := '';
  aTime := 0;
  if FindFirst(IncludeTrailingPathDelimiter(AFolder) + APattern,faAnyFile,sr) = 0 then
  begin
    repeat
      if sr.Time > aTime then
      begin
        aTime := sr.Time;
        Result := sr.Name;
      end;
    until FindNext(sr) <> 0;
    FindClose(sr);
  end;
end;

AFolder应该是您要扫描的文件夹的绝对路径或相对路径,APattern是可选的,应该包含指定应检查哪些文件的标准DOS模式.如果没有为第二个参数指定任何内容,则假定为*.*(所有文件).结果将是具有最近修改日期的文件名.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读