-2

我正在尝试制作一个小应用程序,我可以在其中选择多个文件,设置间隔并设置 FTP 服务器信息。之后,它以给定的时间间隔上传文件。

我在FTP部分苦苦挣扎。我可以轻松地从这里复制/粘贴部分代码,但我认为这对我没有帮助。基本上我需要检查文件是否存在,如果存在,删除它并上传新版本,如果它不存在,只需上传文件。

怎么能以最简单的方式完成呢?我不是在寻找有关如何做到这一点的提示,而是在寻找更可取的实际代码,并带有关于什么做什么的评论。

编辑:根据这里的回复,我认为我正在寻找的是一种覆盖文件的方法。实际上这是我的第一个想法,但我找不到任何关于如何操作的信息,然后我就得出结论,我需要手动检查等等。我很抱歉这个错误。有人可以给我一个提示我需要覆盖什么吗?

4

1 回答 1

7

尝试这样的事情

var request = (FtpWebRequest)WebRequest.Create("ftp://ftp.myworld.com/file.txt");
request.Credentials = new NetworkCredential("username", "password");
request.Method = WebRequestMethods.Ftp.GetFileSize;

try
{
  FtpWebResponse response = (FtpWebResponse)request.GetResponse();

  // To delete file
  FtpWebRequest delRequest = (FtpWebRequest)WebRequest.Create(serverUri);
  delRequest.Credentials = new NetworkCredential("username", "password");
  delRequest.Method = WebRequestMethods.Ftp.DeleteFile;
  FtpWebResponse response = (FtpWebResponse) delRequest.GetResponse();
}
catch(Exception e)
{
   var response = (FtpWebResponse)ex.Response;
   if (response.StatusCode == FtpStatusCode.ActionNotTakenFileUnavailable)
   {
       //not exist
   }
}
于 2013-04-10T17:14:36.720 回答