将文件移动到另一个ftp位置时,必须对新的ftp位置使用RenameTo
在本例中,如何使用RenameTo移动到新的ftp位置?

FtpWebRequest ftpRequest = null;
FtpWebResponse ftpResponse = null;
try
{
    ftpRequest = (FtpWebRequest)WebRequest.Create("ftp://mysite.com/folder1/fileName.ext");
    ftpRequest.Credentials = new NetworkCredential("user", "pass");
    ftpRequest.UseBinary = true;
    ftpRequest.UsePassive = true;
    ftpRequest.KeepAlive = true;
    ftpRequest.Method = WebRequestMethods.Ftp.Rename;
    ftpRequest.RenameTo = "ftp://mysite.com/folder2/fileName.ext";
    ftpResponse = (FtpWebResponse)ftpRequest.GetResponse();
    ftpResponse.Close();
    ftpRequest = null;
}
catch (Exception ex) { Label1.Text = (ex.ToString()); }

最佳答案

将目标路径设置为.RenameTo属性,而不是url:

ftpRequest.RenameTo = "/folder2/fileName.ext";

根据FtpWebRequest.RenameTo property的MSDN文件:
获取或设置要重命名的文件的新名称。
WebRequest.Create method相比:
为指定的uri方案初始化新的webrequest实例。

07-24 21:52