C#下载文件获取进度

zcl26 2008-07-15 09:56:05
如题,向前辈请教:我的任务是通过webservice获取服务器上的文件列表,查看本地文件列表,不存在的下载之,不知道有几种方法?
我用的是webclient,我做了个实验,但是直接就下载下来了,不知道怎么获取它的进度。网上看到一个例子,是用一个byte[] mbyte = new byte[100000];来做的
中转,用一个循环来实现,但是感觉文件的大小会有限制,效率也会有问题,请前辈指点一下。。。。。。痛苦中,毕竟winform是新手
...全文
446 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
zcl26 2008-07-16
  • 打赏
  • 举报
回复
顶一下
emile02220 2008-07-15
  • 打赏
  • 举报
回复
循环应该不可能,用循环的话估计效率很低,看来还是算法方面的问题,WEB方面不太熟悉,我帮你顶下吧~
眼里进了砂 2008-07-15
  • 打赏
  • 举报
回复
BackgroundWorker大致可以这样

BackgroundWorker worker




worker.ReportProgress(percentComplete % 100);


void backgroundCalculator_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
updateProgress(e.ProgressPercentage);
}

// Indicate progress using progress bar
private void updateProgress(int percentComplete)
{
calcProgress.Value = percentComplete;
}



zcl26 2008-07-15
  • 打赏
  • 举报
回复
我知道多线程,能不能详细点啊,详细点获取下载进度的方法,难道只能通过循环来实现吗?
http://hi.baidu.com/60000/blog/item/80b74a362d7b26dda2cc2bf7.html
只有这么一种方法吗?
yagebu1983 2008-07-15
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 zhnzzy 的回复:]
用多线程
[/Quote]
zcl26 2008-07-15
  • 打赏
  • 举报
回复
明天给帖子加分,就不信一个熟悉这方面的高手都没有,哭了。。。
zhnzzy 2008-07-15
  • 打赏
  • 举报
回复
用多线程
suyiming 2008-07-15
  • 打赏
  • 举报
回复
思归好像最近失踪
wxm4585 2008-07-15
  • 打赏
  • 举报
回复
Read.ReadLine()从返回流里面一行行的读取数据,定义时间,每10行触发一次事件,UI订阅事件,通过传递的参数改变进度条的值。
zcl26 2008-07-15
  • 打赏
  • 举报
回复
顶一下,别掉了
zcl26 2008-07-15
  • 打赏
  • 举报
回复
顶一下,别掉了
zcl26 2008-07-15
  • 打赏
  • 举报
回复
顶一下,别掉了
falx2004 2008-07-15
  • 打赏
  • 举报
回复
即将开展此类问题,关注中
烈火焚身 2008-07-15
  • 打赏
  • 举报
回复
循环不好
受限制
cychris 2008-07-15
  • 打赏
  • 举报
回复
应该是用timer
关注
zcl26 2008-07-15
  • 打赏
  • 举报
回复
再顶一下

110,915

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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