zoukankan      html  css  js  c++  java
  • DELPHI XE2 遍历子目录及文件《转》

    function MakeFileList(Path,FileExt:string):TStringList ;
    var
      sch:TSearchrec;
    begin
      Result:=TStringlist.Create;
    
      if rightStr(trim(Path), 1) <> '' then
        Path := trim(Path) + ''
      else
        Path := trim(Path);
    
      if not DirectoryExists(Path) then
      begin
        Result.Clear;
        exit;
      end;
    
      if FindFirst(Path + '*', faAnyfile, sch) = 0 then
      begin
        repeat
           Application.ProcessMessages;
           if ((sch.Name = '.') or (sch.Name = '..')) then Continue;
           if DirectoryExists(Path+sch.Name) then
           begin
             Result.AddStrings(MakeFileList(Path+sch.Name,FileExt));
           end
           else
           begin
             if (UpperCase(extractfileext(Path+sch.Name)) = UpperCase(FileExt)) or (FileExt='.*') then
             Result.Add(Path+sch.Name);
           end;
        until FindNext(sch) <> 0;
        FindClose(sch);
      end;
    end;
    procedure TForm1.FormCreate(Sender: TObject);
    var
      I : integer;
    begin
      lst1.Items := MakeFileList(ExtractFilePath(Application.ExeName)+'Report','.fr3');
      for I := 0 to lst1.Count -1 do
        begin
          lst1.Items[I] := StringReplace(StringReplace(lst1.Items[I],ExtractFilePath(Application.ExeName)+'Report','',[rfReplaceAll, rfIgnoreCase]),'','',[rfReplaceAll, rfIgnoreCase]);
        end;
      if lst1.Items[0] = '' then
        lst1.Items.Delete(0);
    
        cbb1.Clear;
      for I := 0 to lst1.Count -1 do
        begin
          cbb1.Items.Add(lst1.Items[I]);
          cbb1.ItemIndex := 0;
        end;
      lst1.Clear;
    end;
  • 相关阅读:
    精英程序员
    C语言(2)
    C语言练习
    C语言工具---Code::Blocks
    C语言(1)
    【udacity】机器学习-神经网络
    【udacity】机器学习-回归
    【udacity】机器学习-决策树
    【术语记录】机器学习
    python入门(九):目录操作
  • 原文地址:https://www.cnblogs.com/LceMeaning/p/4195970.html
Copyright © 2011-2022 走看看