我正在尝试将文件从文件夹移动到其父文件夹中。
我之前在移动文件时遇到过问题,这与 RenameTo
属性上的绝对路径和相对路径有关。我当前收到 553 错误(不允许使用文件名)。
文件位于“//blah/John/Update/Done/”中,我想移至“//../Update/”。
这是我正在使用的代码片段:
string ftpConn="ftp://blah/John/Update/";
for (int i = 0; i < fileList.Count; i++ )
{
var requestMove = (FtpWebRequest)WebRequest.Create(ftpConn + "Done/" + fileList[i].fName);
requestMove.Method = WebRequestMethods.Ftp.Rename;
requestMove.Credentials = new NetworkCredential(ftpUser, ftpPass);
requestMove.RenameTo = ".../John/Update/" + fileList[i].fName;
requestMove.GetResponse();
}
我尝试将 RenameTo
属性更改为绝对路径,但它仍然给出相同的错误。
最佳答案
我认为 ...
在相对路径中无效。
您的意思可能是:
requestMove.RenameTo = "./../" + fileList[i].fName;
// ^ ^
// Current dir ──┘ │
// │
// Go up one folder ──┘
如果您当前的工作目录是 /blah/John/Update/Done/
,则 ./../
有效地代表 /blah/John/Update
.
有关相对路径语法的更多信息 here .
关于c# - 将文件移动到 FTP 上的父文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30899571/