中国.Net论坛--『 C#.Net 』 浏览:关于如何在下载过程中截取下载过程的方法!-...
来源:百度文库 编辑:神马文学网 时间:2024/04/28 13:39:08
关于如何在下载过程中截取下载过程的方法!
前几天有人问我这个方法,我这里说明一下。
我用的是WebClient类实现,关键是我没在FTP上实现过。不过HTTP绝对可以!
其实很简单的。
string urlString = "http://localhost/aaa/Paos.rar"; //即将要下载的文件地址
WebClient wc = new WebClient();
Stream sm = wc.OpenRead(urlString); //将网络流读取附给一个基础流
FileStream fsm = new FileStream(@"c:\Paos.rar",FileMode.OpenOrCreate);//建立一个对应的文件流
Byte[] btyArray = new Byte[8000];//用个字节数组做缓冲区
while(sm.Read(btyArray,0,8000)>=0) //将基础流中数据写到缓冲区里
{
fsm.Write(btyArray,0,8000); //将缓冲区的内容写到文件流里
}
sm.Close();//关闭基础流
fsm.Close();//关闭文件流
注意哦!这里的缓冲区设成8000,没有任何的意义。你也可以自己去设置一个合适的值,当然如果不小心设成100的话,你就会体会到下载速度是14400BPS的感觉。绝对的恶搞,当初我第一次测试的时候就是这个值结果一个1MB的文件居然要8分钟。而且还是本地的。
前几天有人问我这个方法,我这里说明一下。
我用的是WebClient类实现,关键是我没在FTP上实现过。不过HTTP绝对可以!
其实很简单的。
string urlString = "http://localhost/aaa/Paos.rar"; //即将要下载的文件地址
WebClient wc = new WebClient();
Stream sm = wc.OpenRead(urlString); //将网络流读取附给一个基础流
FileStream fsm = new FileStream(@"c:\Paos.rar",FileMode.OpenOrCreate);//建立一个对应的文件流
Byte[] btyArray = new Byte[8000];//用个字节数组做缓冲区
while(sm.Read(btyArray,0,8000)>=0) //将基础流中数据写到缓冲区里
{
fsm.Write(btyArray,0,8000); //将缓冲区的内容写到文件流里
}
sm.Close();//关闭基础流
fsm.Close();//关闭文件流
注意哦!这里的缓冲区设成8000,没有任何的意义。你也可以自己去设置一个合适的值,当然如果不小心设成100的话,你就会体会到下载速度是14400BPS的感觉。绝对的恶搞,当初我第一次测试的时候就是这个值结果一个1MB的文件居然要8分钟。而且还是本地的。
中国.Net论坛--『 C#.Net 』 浏览:关于如何在下载过程中截取下载过程的方法!-...
如何在autotools中使用其它动态库的方法 - C/C - ChinaUnix.net
C/C++&.NET->图形处理 - 站长下载
ASP.NET中利用存储过程实现模糊查询
ASP.NET中利用存储过程实现模糊查询
asp.net调用存储过程方法新解
如何在存储过程中拥有role的权限
浅谈如何在谈判过程中巧妙的拒绝客户
VB.NET Sub过程简单分析
在网络营销过程中如何留住客户
在网络营销过程中如何留住客户
[精彩] 如何在C语言中巧用正则表达式 - ChinaUnix.net
如何在网上传送大体积文件 无极BT下载论坛 -免费电影BT下载!-www.btwuji.c...
如何在网上传送大体积文件 无极BT下载论坛 -免费电影BT下载!-www.btwuji.c...
ASP.NET(C#)页面间传值的常见方法
如何在asp.net中如何在线播放视频文件1
如何保存SQL的money类型数据。 .NET技术 / VB.NET - CSDN社区 c...
Microsoft .Net Framework 3.5 for XP 下载
视频格式转换器推荐下载-bokee.net
SNS网站的内容、结构和盈利模式 OURJAVA.NET技术社区 源码下载,教程下载,IT...
SNS网站的内容、结构和盈利模式 OURJAVA.NET技术社区 源码下载,教程下载,IT...
C#.Net的面试试题
《在大海中永生》的采写过程
如何下载字体在WORD中使用