如何从TIdFTP获取和过滤文件列表?

时间:2013-09-04 15:56:01

标签: delphi ftp indy10

我正在尝试使用实用程序来扫描我们的FTP站点以查找旧文件。

我今天遇到了Indy FTP作为RAD Studio的一部分并且喜欢它的工作方式,但我该如何做呢?

  1. 获取我可以看到的文件/目录列表(从TIdFTP.List()转到列表框)。
  2. 按日期缩小这些结果(显示文件名/路径)

1 个答案:

答案 0 :(得分:6)

TIdFTP有一个DirectoryListing集合,您可以在调用TIdFTP.List()后循环播放。该集合中的每个项目都包含FileNameItemTypeModifiedDate属性等。

在线使用了很多FTP列表格式,Indy为它们实现了许多解析器,但默认情况下大多数解析器都没有启用。如果您要连接的FTP服务器不支持MLSD命令(该解析器始终处于启用状态),和/或您将TIdFTP.UseMLIS属性设置为false,则需要之一:

  1. 将单个IdFTPListParse...单元添加到您的uses子句中,以便只启用您要支持的特定格式的解析器。

  2. IdAllFTPListParsers单元添加到uses子句中以启用所有解析器。