怎么遍历文件夹下的所有文件?

解决方案 »

  1.   

    两个函数FindFirstFile\FindNextFile,顺便问一下在哪提问题啊?
      

  2.   

    哈哈,我昨天刚做过,
    用_chdir(),_findfirst()和_findnext()就可以做到
    如果需要代码我可以贴上,我也是从网上找的,挺好用的。
      

  3.   

    var
       SearchRec : TSearchRec;
       Path : String;
       Attr : integer;
       Found : integer;
    begin
       Path := 'c:\*.*';//设定要显示的路径
       Attr := faAnyFile;
       Found := FindFirst(Path, Attr, SearchRec);//查找文件
       while Found = 0 do
       begin
           ListView1.Items.Add; //添加内容
           ListView1.Items[ListView1.Items.Count-1].Caption := (SearchRec.Name);
           Found := FindNext(SearchRec);
       end;
       FindClose(SearchRec);//停止查找
      

  4.   

    procedure DirToTreeView(Tree: TTreeView; Directory: string; Root: TTreeNode; IncludeFiles:
      Boolean);
    var
      SearchRec         : TSearchRec;
      ItemTemp          : TTreeNode;
    begin
      with Tree.Items do
      try
        BeginUpdate;
        if Directory[Length(Directory)] <> '\' then Directory := Directory + '\';
        if FindFirst(Directory + '*.*', faDirectory, SearchRec) = 0 then
        begin
          repeat
            if (SearchRec.Attr and faDirectory = faDirectory) and (SearchRec.Name[1] <> '.') then
            begin
              if (SearchRec.Attr and faDirectory > 0) then
                Root := AddChild(Root, SearchRec.Name);
              ItemTemp := Root.Parent;
              DirToTreeView(Tree, Directory + SearchRec.Name, Root, IncludeFiles);
              Root := ItemTemp;
            end
            else if IncludeFiles then
              if SearchRec.Name[1] <> '.' then
                AddChild(Root, SearchRec.Name);
          until FindNext(SearchRec) <> 0;
          FindClose(SearchRec);
        end;
      finally
        EndUpdate;
      end;
    end;