C# 获得;(553)不允许使用文件名“;在FTP服务器上重命名文件时

C# 获得;(553)不允许使用文件名“;在FTP服务器上重命名文件时,c#,.net,ftp,ftpwebrequest,C#,.net,Ftp,Ftpwebrequest,在我的应用程序中,FTP server one目录中有文件,我将该文件源移动到目标路径。在此过程中,当我移动选定的源文件时,源文件将不会显示在源路径中,它将仅显示在目标路径中 我尝试了以下代码,但出现错误: string sourceurl = "ftp://ftp.com/Mainfoder/Folder1/subfolder/subsubfolder/" string Targetpat = "ftp://ftp.com/Mainfoder/DownloadedFiles/"+sub

在我的应用程序中,FTP server one目录中有文件,我将该文件源移动到目标路径。在此过程中,当我移动选定的源文件时,源文件将不会显示在源路径中,它将仅显示在目标路径中

我尝试了以下代码,但出现错误:

string sourceurl = "ftp://ftp.com/Mainfoder/Folder1/subfolder/subsubfolder/"
string Targetpat =
    "ftp://ftp.com/Mainfoder/DownloadedFiles/"+subfolder+"/"+todaydatefolder+"/"+susubfolder;
Uri serverFile = new Uri(sourceurl + filename);
request = (FtpWebRequest)FtpWebRequest.Create(serverFile);
request.Method = WebRequestMethods.Ftp.Rename;
request.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
request.RenameTo = Targetpat+"/"+newfilename;//folders without filename
response = (FtpWebResponse)request.GetResponse();               
Stream ftpStream = response.GetResponseStream();    
System.dll中发生类型为“System.Net.WebException”的未处理异常 其他信息:远程服务器返回错误:(553)现在允许使用文件名

request.RenameTo=newfilename
:当我只设置
newfilename
时,它只重命名源文件名

如何将此文件移动到同一FTP服务器中的另一个目录

请告诉我。谢谢你

作为:

request.RenameTo
仅采用路径

所以这是错误的:

string Targetpat =
    "ftp://ftp.com/Mainfoder/DownloadedFiles/"+subfolder+"/"+todaydatefolder+"/"+susubfolder;
request.RenameTo = Targetpat+"/"+newfilename;
应该是:

string Targetpat =
    "/Mainfoder/DownloadedFiles/"+subfolder+"/"+todaydatefolder+"/"+susubfolder;
request.RenameTo = Targetpat+"/"+newfilename;

尝试将文件名添加到
Targetpat
。您还需要目标文件名。仅文件夹名称不适用于FTPI添加的文件名,也可以是这样的
request.RenameTo=Targetpat+“/”+filename但我还是遇到了同样的错误。我怎样才能解决这个错误。谢谢你Martin PrikryI,你帮了我很多。当我发布这篇文章时,你总是回复我,给我建议,所有这些都对我很有帮助。非常感谢你。
string Targetpat =
    "/Mainfoder/DownloadedFiles/"+subfolder+"/"+todaydatefolder+"/"+susubfolder;
request.RenameTo = Targetpat+"/"+newfilename;