我的代码如下:private void DownLoad(object url,string ip)
        {            Stream responseStream = null;
            FileStream fileStream = null;
            StreamReader reader = null;
            try
            {                FtpWebRequest downloadRequest =
                    (FtpWebRequest)WebRequest.Create(url.ToString());
                downloadRequest.UsePassive = false;
                downloadRequest.Credentials = new NetworkCredential("yp110", "yp110",ip);
                FtpWebResponse downloadResponse =
                    (FtpWebResponse)downloadRequest.GetResponse();//运行到这块的时候,报一个503,未登录的错误
                responseStream = downloadResponse.GetResponseStream();
                string fileName = Path.GetFileName(downloadRequest.RequestUri.AbsolutePath);
                if (fileName.Length == 0)
                {
                    reader = new StreamReader(responseStream);
                    Console.WriteLine(reader.ReadToEnd());
                }
                else
                {
                    fileStream = File.Create(downLoad + "\\" + name);          
                    byte[] buffer = new byte[1024];
                    int bytesRead;
                    while (true)
                    {
                        bytesRead = responseStream.Read(buffer, 0, buffer.Length);
                        if (bytesRead == 0)
                            break;
                        fileStream.Write(buffer, 0, bytesRead);
                    }
                    fileStream.Close();
                    this.lblState.Text = "下载完成";
                }            }            catch (Exception ex)
            {
                this.lblState.Text = ex.Message.ToString();
            }
            finally
            {
                if (reader != null)
                    reader.Close();
                else if (responseStream != null)
                    responseStream.Close();
                if (fileStream != null)
                    fileStream.Close();
                if (isDownLoad)
                    isDownLoad = false;            }        }

解决方案 »

  1.   

    楼主可以参考一下这个帖子~我按照这做出来没什么大问题~
    http://blog.csdn.net/veryhappy/archive/2006/01/16/581072.aspx
      

  2.   

    530 Must perform authentication before identifying USER. 未登入。
    检查你的ftp的名字密码是否正确
    再者检查你的ftp服务器时候处于 正常状态?  
      

  3.   

    我加了,我的URL是
    ftp://192.168.1.4:3333/1.txt
    不行的
      

  4.   

    我用FTP的工具是可以登录的上去的,我自己写的,就不行.
      

  5.   

    我这个版本的Server-U 没有匿名登录
      

  6.   

    检查下你的用户名和密码,先用浏览器直接登下看行不行。我之前做一个FTP下载的就是在实际运行时用户名大小写变了出现同样的错误。
      

  7.   

    我用IE查看连接,它也登录不上去,难倒是我的FTP服务器设置有问题?
      

  8.   

    Server-U 的话看看你用户权限设置~