【问题标题】:How do I get and filter a list of files from TIdFTP?如何从 TIdFTP 获取和过滤文件列表?
【发布时间】:2013-09-04 15:56:00
【问题描述】:

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

我今天在 RAD Studio 中遇到了 Indy FTP,并且喜欢它的工作原理,但我该如何做以下事情?

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

【问题讨论】:

  • 欢迎,请展示您的尝试,以便我们为您提供帮助。
  • 当您的问题程度似乎表明您实际上根本没有观察到它的工作方式时,我很困惑您怎么能说您“喜欢它的工作方式”。如果你有,我会假设你已经看到它获取文件列表,因为该功能肯定包含在曾经编写的每个演示中。
  • 正如我所说,我是整个 indyFTP 对象的新手,并没有意识到有演示。下面的答案告诉我我需要什么:)

标签: delphi ftp indy10


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多