• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

如何将FTP中的文件直接下载到客户机?

lanye_purple 2008-06-19 11:56:50
如何将FTP中的文件直接下载到本机,而不经过服务器

以下代码是将文件下载到网站服务器中


private void ftpDownLoadFile(string serverPath, string clientPath)
{

string FtpServer = teForm.UserInformation.FTPAddress;
string FtpUserName = teForm.UserInformation.FTPUser;
string FtpPassword = teForm.UserInformation.FTPPWD;
string FtpFileAddress = "ftp://" + FtpServer + "/" + serverPath;

FtpWebRequest reqFTP;
try
{
FileStream outputStream = new FileStream(clientPath, FileMode.Create);
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(FtpFileAddress));
reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
reqFTP.UseBinary = true;
reqFTP.Credentials = new NetworkCredential(FtpUserName, 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);

while (readCount > 0)
{
outputStream.Write(buffer, 0, readCount);
readCount = ftpStream.Read(buffer, 0, bufferSize);
}

ftpStream.Close();
outputStream.Close();
response.Close();
}
catch (Exception ex)
{
Response.Write(ex.Message);
}

}


如何改进,望高手指点~~(网站内含有AJAX)
...全文
67 点赞 收藏 7
写回复
7 条回复
lanye_purple 2008年06月20日
来个五角星的,帮忙看看啊
回复 点赞
zwb521 2008年06月19日
下载文件不经过可能吗?
FTP下载不太清楚,学习啦!!
回复 点赞
大自然D使者 2008年06月19日
关注并学习,o(∩_∩)o...
回复 点赞
水边2 2008年06月19日
通过ASP.Net,不可能不通过服务器,直接建立客户机和FTP的联系,只能先下载到服务器上,再传输到客户机上。

除非在客户机上安装一个控件

回复 点赞
xp1056 2008年06月19日
[Quote=引用 3 楼 lanye_purple 的回复:]
aa
[/Quote]
帮你UP
回复 点赞
lanye_purple 2008年06月19日
80分,没人要吗?
在网上搜索许久,没有找到合适的方法.
回复 点赞
lanye_purple 2008年06月19日
既然能从客户端上传上去,那么也应该可以直接下载到客户机上面.
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告