public bool Download(string filePath, string fileName,string ftpPath, out string errorinfo)/**/////上面的代码实现了从ftp服务器下载文件的功能
{ try
{ String onlyFileName = Path.GetFileName(fileName); string newFileName = filePath + "\\" + onlyFileName; if (File.Exists(newFileName))
{ errorinfo = string.Format("本地文件{0}已存在,无法下载", newFileName); return false;
} string url = "ftp://" + ftpServerIP + "/" + ftpPath+"/" + fileName; Connect(url);//连接
reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
Stream ftpStream = response.GetResponseStream();
long cl = response.ContentLength;
int bufferSize = 2048;
int readCount;
byte[] buffer = new byte[bufferSize];
readCount = ftpStream.Read(buffer, 0, bufferSize); FileStream outputStream = new FileStream(newFileName, FileMode.Create);
while (readCount > 0)
{ outputStream.Write(buffer, 0, readCount);
readCount = ftpStream.Read(buffer, 0, bufferSize); }
ftpStream.Close();
outputStream.Close();
response.Close(); errorinfo = ""; return true; } catch (Exception ex)
{ errorinfo = string.Format("因{0},无法下载", ex.Message); return false; } }我的下载代码是这样的,就是不知道要怎么写选择路径文本框
{ try
{ String onlyFileName = Path.GetFileName(fileName); string newFileName = filePath + "\\" + onlyFileName; if (File.Exists(newFileName))
{ errorinfo = string.Format("本地文件{0}已存在,无法下载", newFileName); return false;
} string url = "ftp://" + ftpServerIP + "/" + ftpPath+"/" + fileName; Connect(url);//连接
reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
Stream ftpStream = response.GetResponseStream();
long cl = response.ContentLength;
int bufferSize = 2048;
int readCount;
byte[] buffer = new byte[bufferSize];
readCount = ftpStream.Read(buffer, 0, bufferSize); FileStream outputStream = new FileStream(newFileName, FileMode.Create);
while (readCount > 0)
{ outputStream.Write(buffer, 0, readCount);
readCount = ftpStream.Read(buffer, 0, bufferSize); }
ftpStream.Close();
outputStream.Close();
response.Close(); errorinfo = ""; return true; } catch (Exception ex)
{ errorinfo = string.Format("因{0},无法下载", ex.Message); return false; } }我的下载代码是这样的,就是不知道要怎么写选择路径文本框
或response.write输出下载
不是啊,我那path就是本地的路径啊
具体情况如下:ASP.NET C# + FTP服务器 + SQL Server服务器
我要从需要用户名密码的FTP服务器上下载文件,文件路径存储在SQL Server数据库中,使用C#中的FTP类下载的时候,如何在ASPX客户端页面弹出文件下载保存的对话框啊?然后又如何把对话框返回路径传给服务端啊?还是只能用ActionX 控件实现啊?