我有一个使用ftprequest下载文件的代码
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();
现在我的需要是我需要在使用相同的requset完成下载后从ftpserver中删除该文件。
我确实尝试追加 requestFileDownload.Method = WebRequestMethods.Ftp.deleteFile; 在关闭请求之前..但它不起作用。 如何使用相同的请求删除文件。
答案 0 :(得分:3)
WebRequest.Create
创建的对象只能用于一个请求。由于FTP中没有“GET和DELETE”方法,因此您需要使用相同的配置创建另一个FtpWebRequest
,并使用新的FtpWebRequest
发送删除请求。