下载ftp文件

zhantianyou 2009-03-13 05:43:26
asp.net怎么通过一个FTP地址,下载该地址的文件。注意,不想通过下载工具。我用window.open(地址)后,会弹出迅雷来下载,但是,我如果不装迅雷,结果就成空白页了,有没有办法,让他用系统的来下载

急,在线等,工作时间要到了,要交任务啊。刚来三天。帮帮忙@!
...全文
362 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuyejian 2011-04-22
  • 打赏
  • 举报
回复
不知道楼主有没有解决??
stonehy520 2009-03-14
  • 打赏
  • 举报
回复
学习,帮顶
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
问题是我如何用asp.net实现让用户选择路径问题
messi_yang 2009-03-14
  • 打赏
  • 举报
回复
ftp下載主要問題就是路徑啊
可先獲得指定路徑。再下載
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
版主,找个人帮下忙啊!
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
FTPServer ftp = new FTPServer();
Response.ContentType = "application/x-zip-compressed";
string fileExtern = "attachment;filename=" + HttpUtility.UrlEncode(fileName);
Response.AddHeader("Content-Disposition", fileExtern);
Stream stream = ftp.GetStream(folderName, fileName);
MemoryStream MeStream=new MemoryStream();
int count=-1;
while((count=stream.ReadByte())!=-1)
{
MeStream.WriteByte((byte)count);
}
Response.BinaryWrite(MeStream.ToArray());
Response.End();
stream.Close();
MeStream.Close();
其实我用这个可以下载到,但是因为开始下载时,他要先从ftp读取流出来,这里花时间,读取完之后,才弹出路径选择,给人感觉我点了下载之后,没反应的错觉
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
asp.net直接转向ftp文件地址,好像不能下载,我不知道往哪个方向想了。本来地址就从数据库读取出来的
果然如此 2009-03-14
  • 打赏
  • 举报
回复
你能不能把另一个文件服务器上的文件下载地址存在数据库里,用程序把要下载的文件地址输出给用户看。。
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
高手帮忙啊!!
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
应该不是ie问题,难道整个公司都有问题?还有,就是我先进入文件夹,再来具体文件,就可以下载了
hhxxcj 2009-03-14
  • 打赏
  • 举报
回复
这个应该是你的IE问题,如果没有迅雷它会自动用浏览器下载的
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 time_is_life 的回复:]
浏览器有问题,用firefox试试
[/Quote]
ftp://192.168.105.8/这个可以列出所有文件

ftp://192.168.8.105/CE2009000109/iis5.1.zip这个就不行了,直接显示无法显示网页(这里如果有装下载工具的话,就会弹出下载工具给你下载)

假如我先ftp://192.168.105.8/
之后我再输入ftp://192.168.8.105/CE2009000109/iis5.1.zip这个就可以显示下载了


我不知这是什么原因。我现在是想在asp.net网站中,从另一个文件服务器把某文件下载下来。但是我在asp.net要会显示路径选择介面.让用户选择下载路径?
zhantianyou 2009-03-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 guochunyang 的回复:]
using System.IO;
using System.Net;
using System.Text;
using System.Diagnostics;
using System.Text.RegularExpressions;

//从ftp上下载文件
private void Download(string filePath, string ImageSrc, string ImageName, string ftpServerIP, string

ftpUserName, string ftpPwd)
{
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
using (FileStream OutputStream = new Fil…
[/Quote]


楼上的,你的这个我知道,但你的路径怎么选择择???asp.net能不能用调出路径选择,再通过ftp下载到该路径
zzxap 2009-03-14
  • 打赏
  • 举报
回复
用google浏览器可以。自带下载工具
果然如此 2009-03-14
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 zhantianyou 的回复:]
问题是我如何用asp.net实现让用户选择路径问题
[/Quote]
选择路径具体是什么意思,说清楚点?
果然如此 2009-03-13
  • 打赏
  • 举报
回复
using System.IO;
using System.Net;
using System.Text;
using System.Diagnostics;
using System.Text.RegularExpressions;

//从ftp上下载文件
private void Download(string filePath, string ImageSrc, string ImageName, string ftpServerIP, string

ftpUserName, string ftpPwd)
{
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
using (FileStream OutputStream = new FileStream(filePath + "\\" + ImageName, FileMode.Create))
{
FtpWebRequest ReqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + ftpServerIP + "/" +

ImageSrc));

ReqFTP.Method = WebRequestMethods.Ftp.DownloadFile;

ReqFTP.UseBinary = true;

ReqFTP.Credentials = new NetworkCredential(ftpUserName, ftpPwd);

using (FtpWebResponse response = (FtpWebResponse)ReqFTP.GetResponse())
{

using (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();
}

response.Close();

}

OutputStream.Close();
}

}

这是asp.net ftp下载方法,还有ftp上传、删除、创建等方法请看以下地址:

http://hi.baidu.com/grrc/blog/item/21d22e33871303ff1b4cff75.html
a12321321321312321 2009-03-13
  • 打赏
  • 举报
回复
是不是楼主IE有问题?
time_is_life 2009-03-13
  • 打赏
  • 举报
回复
浏览器有问题,用firefox试试

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧