FTP如何删除文件夹?

时间:2015-09-03 08:10:59

标签: c++ ftp

在我的MFC VC ++中的FTP客户端应用程序中,我列出了服务器的目录文件并成功删除它们。 LISTNLIST命令可以很好地列出目录文件/内容。

除文件外,列表中还会显示两个文件夹(包含未列出的文件)。但是,当我将DELE命令传递给这些文件夹时,将返回错误并保留文件夹。我觉得这是因为它们是文件夹。

以下是我实施的Delete()功能:

int CFTPClient::Delete(const tstring& strFile) const
{
   ASSERT( !strFile.empty() );
   CReply Reply;
   if( !SendCommand(CCommand::DELE(), strFile, Reply) )
       return FTP_ERROR;
   return SimpleErrorCheck(Reply);
}

我的问题是:FTP中是否有删除/删除文件夹的命令?我指的是RFC 959 FTP协议。 DELERMD命令不适用于文件夹。

1 个答案:

答案 0 :(得分:2)

RMD命令通常只能删除一个空目录。

首先,在发出RMD命令之前,必须以递归方式删除目录内容。

另见FTP Protocol and Deleting Directories