Renaming file with FtpWebRequest

那年仲夏 提交于 2019-12-05 23:38:10

问题


When moving a file to another FTP location you must use RenameTo with the new FTP location.

In this example how do you use RenameTo to move to the new FTP location?

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()); }

回答1:


Set a target path to .RenameTo property, not URL:

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

As per MSDN documentation for FtpWebRequest.RenameTo property:

Gets or sets the new name of a file being renamed.

Compare to WebRequest.Create method:

Initializes a new WebRequest instance for the specified URI scheme.




回答2:


A- change it to be

ftpRequest = (FtpWebRequest)WebRequest.Create("ftp://mysite.com//folder1/fileName.ext");

B- ftpRequest.RenameTo = "ftp://mysite.com//folder2/fileName.ext";

Just add (/) before your file folder that allow you to delFile,renFile also downLoadFile



来源:https://stackoverflow.com/questions/35638532/renaming-file-with-ftpwebrequest

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!