2016-02-25 165 views
3

將文件移動到另一個FTP位置時,必須將RenameTo用於新的FTP位置。如何使用RenameTo移動到新的FTP位置?使用FtpWebRequest重命名文件

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

這個職位上類似的話題可能會有幫助:http://stackoverflow.com/q/13026170/4072843 – Castaglia

回答

3

設定目標路徑.RenameTo屬性,而不是網址:

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

按照MSDN文檔FtpWebRequest.RenameTo property

獲取或設置新名稱爲文件的重命名。

比較,以WebRequest.Create method

初始化新的WebRequest實例指定的URI方案

-1

A- 改變它是

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

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

只需將您的文件夾之前,允許你添加(/)到DELFILE,renFile也downLoadFile

+0

歡迎所以。謝謝您的回答。請記住,很多用戶不是母語爲英語的人,所以像delFile這樣的放棄對他們來說不會那麼明顯。 –