无法在ftp服务器上创建新目录

时间:2016-01-10 09:29:14

标签: c# asp.net ftp

我正在尝试在我的FTP服务器上创建一个目录。我已在服务器上创建了ContractorDoc目录,并希望在其中创建新目录NewDirectory

        try
        {
            FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create("ftp://abc.xyz.com/ContractorDoc/NewDirectory");

            // Step 2 - Configure the connection request
            request.Credentials = new NetworkCredential("uname", "passsword");
            request.UsePassive = true;
            request.UseBinary = true;
            request.KeepAlive = false;

            request.Method = WebRequestMethods.Ftp.MakeDirectory;

            // Step 3 - Call GetResponse() method to actually attempt to create the directory
            FtpWebResponse makeDirectoryResponse = (FtpWebResponse)request.GetResponse();
        }
        catch (WebException ex)
        {
            String status = ((FtpWebResponse)ex.Response).StatusDescription;
        }

我得到一个例外:

550 Cannot create a file when that file already exists. 

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

我认为他必须确保文件夹。 代码中没有错误。也许服务器有问题。

    FtpWebRequest ftpRequest = (FtpWebRequest)WebRequest.Create("ftp://abc.xyz.com/ContractorDoc");
    ftpRequest.Credentials =new NetworkCredential("uname","password");
    ftpRequest.Method = WebRequestMethods.Ftp.ListDirectory;
    FtpWebResponse response = (FtpWebResponse)ftpRequest.GetResponse();
    StreamReader streamReader = new StreamReader(response.GetResponseStream());

    List<string> directories = new List<string>();

    string line = streamReader.ReadLine();
    while (!string.IsNullOrEmpty(line))
    {
        directories.Add(line);
        line = streamReader.ReadLine();
    }

    streamReader.Close();