使用ftp控件下载一个目录

原创 2001年02月10日 14:18:00

delphi中的nmftp控件中Download函数只能下载一个文件,没有提供一个下载整个目录(包含子目录)的函数。
我编写了个实现目录下载功能的方法,需要用到该功能的用户可参考一下。
//目录下载
function tftp.ex_download(remote_dir,local_dir:string):boolean;
var
    i,j,count1:integer;
    att,ss:string;
    current_dir:string;
    temp_dir:string;
begin
    try begin
        NMFTP1.ChangeDir(remote_dir);
        current_dir:=remote_dir;
        temp_dir:=copy(current_dir,2,length(current_dir));
        if not DirectoryExists(local_dir) then CreateDir(local_dir);
        if not directoryexists(local_dir+temp_dir) then createdir(local_dir+temp_dir);
        nmftp1.ParseList:=true;
        NMftp1.list;
        count1:=nmftp1.FTPDirectoryList.name.Count;
        for i:=0 to count1-1  do begin
            //必须
            NMFTP1.ChangeDir(current_dir);
            nmftp1.list;
            ss:=nmftp1.FTPDirectoryList.name.Strings[i];
            att:=nmftp1.FTPDirectoryList.Attribute.Strings[i];
            if (copy(pchar(att),1,1)<>'d')and(copy(pchar(att),1,1)<>'D') then begin
                if not DirectoryExists(local_dir) then CreateDir(local_dir);
                NMFTP1.Download(current_dir+ss,local_dir+temp_dir+ss);
            end
            else begin
                if not directoryexists(local_dir+temp_dir+ss) then createdir(local_dir+temp_dir+ss);
                //递归调用
                ex_download(remote_dir+ss+'/',local_dir);
            end;
        end;
           result:=true;
    end
    except
    On E:Exception do begin
        result:=false;
    end;
    end;
end;

http://www.softcows.com/cn

libcurl 下载ftp服务器全部文件

原:http://blog.csdn.net/mp295345033/article/details/49487347 最近做的一个任务,项目的需求,需要下载ftp上的全部文件,没有上传,只有下载...
  • qq_16209077
  • qq_16209077
  • 2016年07月20日 23:27
  • 16778

以命令方式从FTP 服务器下载文件到本地指定目录

众所周知,FTP命令是FTP服务器用户使用最频繁的命令之一,熟悉并灵活的运用FTP命令,可以大大的方便使用者。 我们假设有一台FTP Server, FTP Server :192.168.80.1...
  • hongtashan11
  • hongtashan11
  • 2013年03月05日 10:24
  • 9836

java通过ftp上传、下载文件,遍历文件目录

import java.io.DataInputStream; import java.io.File; import java.io.FileInputStream; ...
  • huikaichedeyeren
  • huikaichedeyeren
  • 2015年03月12日 15:12
  • 1836

WPF下采用C#实现FTP上传下载获取文件列表

using Microsoft.Win32; using System; using System.Collections.Generic; using System.IO; using System...
  • xsfqh
  • xsfqh
  • 2016年11月23日 13:03
  • 1223

PHP操作FTP的类

  • superbirds
  • superbirds
  • 2014年11月07日 10:38
  • 737

Linux ftp 限制目录切换

文章来源:Linux ftp访问控制配置,包括访问ftp权限和访问ftp目录权限 在Linux 上建立用户为website1  home目录是/data/home/website1...
  • woshizhangliang999
  • woshizhangliang999
  • 2017年05月09日 23:20
  • 1275

CaptainGan------使用递归方法实现,向FTP服务器上传整个目录结构、从FTP服务器下载整个目录到本地的功能

文章来源:http://blog.csdn.net/CaptainGan/article/details/6970332 我最近由于在做一个关于FTP文件上传和下载的功能时候,发现Apache...
  • buster2014
  • buster2014
  • 2015年08月22日 15:35
  • 360

将本地文件上传到远程FTP服务器和从远程FTP服务器下载文件到本地

第2篇    将本地文件上传到远程FTP服务器和从远程FTP服务器上下载文件到本地 1、首先需要在本地设置一个FTP站点 (1)我的电脑——》管理——》本地用户和组——》用户——》新增用户,即设置...
  • sinat_26935081
  • sinat_26935081
  • 2016年12月02日 18:38
  • 2222

Linux下使用Apache访问FTP文件夹引起的问题

通过FTP服务器接收由IP摄像头上传的抓图文件,在通过Apache实现到HTTP的访问,结果配置FTP和Apache遇到了奇怪的权限问题,与一般的问题不同,经过验证,终于找打了解决方案。403 权限问...
  • yin138
  • yin138
  • 2017年06月14日 19:03
  • 481

Apache Camel之FTP组件:简单地从Ftp服务器下载文件到本地文件夹

前期准备:在自己的电脑上搭建FTP服务器 非Spring实现maven依赖: 在一个项目里有关于camel的版本要保持一致!!! org.apache.camel came...
  • github_38222176
  • github_38222176
  • 2017年12月26日 16:11
  • 87
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用ftp控件下载一个目录
举报原因:
原因补充:

(最多只允许输入30个字)