使用ReBex将不同的文件上传到FTP服务器?

时间:2017-12-08 17:10:13

标签: c# console-application sftp rebex

我认为我朝着正确的方向前进,但希望任何人都能投入。 我正在研究一个应该在多个文件夹中查找文件的控制台应用程序,然后将找到的任何文件上传到FTP服务器上的每个相应文件夹(镜像以匹配我的本地目录)。我一般都是使用Rebex和FTP上传的新手。到目前为止,我的代码看起来像这样:

            //Connect to SFTP server 
            Sftp ftp = new Sftp();
            ftp.Connect(ftpServerURL);
            ftp.Login(ftpUserName, ftpPassword);

            //Upload local files to SFTP Server
            if (ftp.IsConnected == true)
            {
                ftp.PutFile(sourceFilePath, sftpTargetFolder);
            }

我的问题是:此代码是否会读取本地目录中的每个文件夹并将其上传到sftpTargetFolder? (sourceFilePath和sftpTargetFolder当前在App.Config中定义)。这甚至是最好的方法吗?如何在上传过程中捕获错误?任何输入都非常赞赏!谢谢。

1 个答案:

答案 0 :(得分:1)

我认为我找到了解决方案,似乎在测试中起作用。如果你愿意,可以接受。

            //Upload local files to FTP server 

            ftp.Upload(sourceFilePath, "/", Rebex.IO.TraversalMode.Recursive, Rebex.IO.TransferMethod.Copy, Rebex.IO.ActionOnExistingFiles.OverwriteOlder);
            ftp.Disconnect();