C# 从ftpserver下载文件时出现异常
我用下面的代码将文件从FTP服务器下载到本地文件系统。但是当我使用它时,它显示了以下错误 我使用了以下代码 代码片段C# 从ftpserver下载文件时出现异常,c#,ftp,C#,Ftp,我用下面的代码将文件从FTP服务器下载到本地文件系统。但是当我使用它时,它显示了以下错误 我使用了以下代码 代码片段 private string user = "uname"; private string pass = "passwd"; private FtpWebRequest ftpRequest ; private FtpWebResponse ftpResponse ; private Stream ftpStream ; public void download(stri
private string user = "uname";
private string pass = "passwd";
private FtpWebRequest ftpRequest ;
private FtpWebResponse ftpResponse ;
private Stream ftpStream ;
public void download(string remoteFile, string localFile)
{
try
{
ftpRequest = (FtpWebRequest)FtpWebRequest.Create("ftp://uname:passwd@hostname/foldername/filename");
ftpRequest.Credentials = new NetworkCredential(user, pass);
ftpRequest.UseBinary = true;
ftpRequest.UsePassive = true;
ftpRequest.KeepAlive = false;
ftpRequest.Method = WebRequestMethods.Ftp.DownloadFile;
ftpResponse = (FtpWebResponse)ftpRequest.GetResponse();
ftpStream = ftpResponse.GetResponseStream();
FileStream localFileStream = new FileStream(localFile, FileMode.Create);
byte[] byteBuffer = new byte[2048];
int bytesRead = ftpStream.Read(byteBuffer, 0, 2048);
try
{
while (bytesRead > 0)
{
localFileStream.Write(byteBuffer, 0, bytesRead);
bytesRead = ftpStream.Read(byteBuffer, 0, 2048);
}
}
catch (Exception ex) { Console.WriteLine(ex.ToString()); }
localFileStream.Close();
ftpStream.Close();
ftpResponse.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
Console.ReadKey();
}
return;
}
有人能帮我解决这个问题吗
更新
我还更改了ftpRequest.KeepAlive=false
toftpRequest.KeepAlive=true代码>
但是我面临着同样的例外改变ftpRequest.KeepAlive=false
toftpRequest.KeepAlive=true代码>当我按以下方式更改代码时
ftpRequest.UsePassive = false;
它从ftp服务器下载给定文件请参阅本文。它可能会解决您的错误@Saravanan..谢谢你的帖子…但当我把它改为true时,我也面临着同样的例外。你也可以尝试用“using”包装“ftprequest”来更改代码。你也可以解释一下你的解决方案吗?