c# - 将文件移动到 FTP 上的父文件夹

标签 c# ftp

我正在尝试将文件从文件夹移动到其父文件夹中。

我之前在移动文件时遇到过问题,这与 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/

相关文章:

linux - Docker:如何部署 vsftpd 实例?

java - 我可以从 ftp 下载文件而不先保存我的目录吗

c# - 通过搜索组合键 C# 查找 list<T> 项

c# - 使用 SharpDx 或 IMSourceReader 从 mp4 文件中读取第二个音轨流

c# - 套接字编程中提供了无效参数

c# - 将基于 C# BlockingCollection 的代码转换为 TPL 数据流

java - 如何配置 Spring 集成 FTP 进行动态入站?

python - 使用 Python 的 ftplib 获取目录列表,可移植

c# - 如何用C#从FTPS下载文件

c# - 打印机无法从 DeviceHub 接收作业