c# FTP -覆盖文件

本文关键字:文件 覆盖 FTP | 更新日期: 2023-09-27 18:08:25

我想做一个小应用程序,我可以选择多个文件,设置间隔和设置FTP服务器信息。然后按给定的时间间隔上传文件。

我在FTP部分挣扎。我可以很容易地从这里复制/粘贴代码的某些部分,但我不认为这将帮助我。基本上我需要检查文件是否存在,如果存在,删除它并上传新版本,如果不存在则上传文件。

那怎么能用最简单的方法做到呢?我不是在寻找如何做到这一点的技巧,我在寻找实际的代码更可取的注释什么做什么。

编辑:基于这里的响应,我认为我正在寻找的是一种覆盖文件的方法。实际上,这是我的第一个想法,但我找不到任何关于如何做的东西,然后我只是得出结论,我需要手动检查等等。我为这个错误感到抱歉。有人能给我一个提示,我需要什么重写?

c# FTP -覆盖文件

试试这样

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
   }
}