查找文件夹

时间:2010-03-14 00:01:43

标签: delphi count directory

我想查找文件夹中有多少文件夹,或者我应该说文件夹中有多少SubFolred。那么,我该怎么办?

P.S。我正在用Delphi编程

4 个答案:

答案 0 :(得分:3)

除了FindFirst技巧之外,如果要计算树中的所有文件夹(即所有级别)而不仅仅是直接文件夹,则需要使用递归。

以下是递归方法的简短示例,看起来正是您正在寻找的内容。提示:递归使用Find()方法。

Recursive Search example at DelphiTricks.com

答案 1 :(得分:2)

答案 2 :(得分:1)

这取决于您的编译器版本。如果您使用的是Delphi 2010,我可以提出的最简单的代码是:

uses IOUtils, Types;

function GetSubDirCount(const Path: string): Cardinal;
var
  StrArray : TStringDynArray;
begin
  StrArray := TDirectory.GetDirectories(Path,'*',IOUtils.TSearchOption.soAllDirectories);
  Result := Length(StrArray);
end; 

答案 3 :(得分:0)

您没有提到您使用的是哪个版本的Delphi。最新版本的IOUtils单元包含TDirectory类。请在此处查看示例:link text