air,java,Delphi递归获得文件夹及其子文件信息

把以前做过的项目总结一下!参加工作以来一共用三种不同语言实现了获得文件夹及其子文件信息。为了方便以后使用总结一下

air实现: 

private function getfile(filelist:File):Array{  
  var list:Array = filelist.getDirectoryListing();
  var count:uint=list.length;
  for (var i:uint = 0; i < count; i++) {
   if(list[i].isDirectory) {
    var listtemp:Array = getfile(list[i]);    
    list = list.concat(listtemp);
   }else{
    continue;
   }     
  }
  return list;
 }

把最后的文件信息放到array里面

delphi实现:

procedure Tallmark.GetDirectoryFiles(const ADirectory: string;
  fileList: TStrings);
var
  Dir: TSearchRec;
  Ret: integer;
  Path: string;
begin
  if fileList <> nil then
  begin
    Path := ExtractFilePath(ADirectory);
    Ret := Sysutils.FindFirst(ADirectory, faAnyFile, Dir);
    if Ret <> NO_ERROR then exit;
    try
      while ret = NO_ERROR do
      begin
        if Dir.attr and faDirectory = 0 then fileList.Add(path + Dir.Name);
        if (Dir.Attr in [faDirectory]) and (Dir.Name[1] <> '.') then
        begin
          GetDirectoryFiles(Path + Dir.Name + '/*.dbf', fileList);
        end;

        Ret := Sysutils.FindNext(Dir);
      end;
    finally
      Sysutils.FindClose(Dir);
    end;
  end;
end;

把所有的文件信息放到一个TStrings里面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值