C# FTP请求下载文件并立即删除
我有一个使用ftprequest下载文件的代码C# FTP请求下载文件并立即删除,c#,ftp,C#,Ftp,我有一个使用ftprequest下载文件的代码 FtpWebRequest requestFileDownload = (FtpWebRequest)WebRequest.Create("ftp://localhost/Source/" + fileName); requestFileDownload.Credentials = new NetworkCredential("khanrahim", "arkhan22"); requestFileDownload.Method = WebRequ
FtpWebRequest requestFileDownload = (FtpWebRequest)WebRequest.Create("ftp://localhost/Source/" + fileName);
requestFileDownload.Credentials = new NetworkCredential("khanrahim", "arkhan22");
requestFileDownload.Method = WebRequestMethods.Ftp.DownloadFile;
FtpWebResponse responseFileDownload = (FtpWebResponse)requestFileDownload.GetResponse();
Stream responseStream = responseFileDownload.GetResponseStream();
FileStream writeStream = new FileStream(localPath + fileName, FileMode.Create);
int Length = 2048;
Byte[] buffer = new Byte[Length];
int bytesRead = responseStream.Read(buffer, 0, Length);
while (bytesRead > 0)
{
writeStream.Write(buffer, 0, bytesRead);
bytesRead = responseStream.Read(buffer, 0, Length);
}
responseStream.Close();
writeStream.Close();
现在我需要的是,一旦下载完成,我需要使用相同的请求从ftpserver中删除该文件
我确实试过附加
requestFileDownload.Method=WebRequestMethods.Ftp.deleteFile;
在关闭请求之前..但它不起作用。
如何使用相同的请求删除文件。由
WebRequest.Create创建的对象只能用于一个请求。由于FTP中没有“GET and DELETE”方法,因此您需要创建另一个具有相同配置的FtpWebRequest
,并在附加后使用新的FtpWebRequest
发送删除请求,您是否使用FtpWebResponse responseFileDownload=(FtpWebResponse)requestFileDownload.GetResponse()执行了该请求代码>?只是一个猜测,但可能会这样做,我这样做了,但我得到了一个错误,如“不能这样做后,服务器的要求是complte”在这种情况下,我如何才能避免重复login@user2799127-您不能-使用FtpWebRequest
您不能发出2个命令,并且必须为每个请求重新登录。如果需要用多个请求与同一个服务器交谈,请考虑。