c#下面用progressBar控件显示从服务器上面下载文件进度的问题

问题描述

小弟是使用下面这个函数从服务器上面下载文件的,现在想用C#下面的progressBar控件显示下载进度,请各位大侠指点一下,应该怎么使用这个控件的max、min和step应该怎样设置还有语句应该放在什么地方跪谢了!!!publicstaticbooldownloadFile(stringstrFileName,stringfile){boolflag=false;//打开上次下载的文件longSPosition=0;//实例化流对象FileStreamFStream;//判断要下载的文件夹是否存在if(File.Exists(strFileName)){//打开要下载的文件FStream=File.OpenWrite(strFileName);//获取已经下载的长度SPosition=FStream.Length;//FStream.Seek(SPosition,SeekOrigin.Current);}else{//文件不保存创建一个文件FStream=newFileStream(strFileName,FileMode.Create);SPosition=0;}try{//打开网络连接HttpWebRequestmyRequest=(HttpWebRequest)HttpWebRequest.Create(file);//向服务器请求,获得服务器的回应数据流StreammyStream=myRequest.GetResponse().GetResponseStream();//定义一个字节数据byte[]btContent=newbyte[512];intintSize=0;intSize=myStream.Read(btContent,0,512);while(intSize>0){FStream.Write(btContent,0,intSize);intSize=myStream.Read(btContent,0,512);}//关闭流FStream.Close();myStream.Close();flag=true;//返回true下载成功}catch(Exception){FStream.Close();flag=false;//返回false下载失败}returnflag;}

解决方案

解决方案二:
multithreadcanfixthis?
解决方案三:
while(intSize>0){FStream.Write(btContent,0,intSize);intSize=myStream.Read(btContent,0,512);---------这里-------}放在while里面
解决方案四:
progressBar1.Maximum=????;//要下载文件的长度progressBar1.Value=0;progressBar1.Step=????最主要就是这几个值不知道怎么设定另外这些好像也不能直接放进while(intSize>0){FStream.Write(btContent,0,intSize);intSize=myStream.Read(btContent,0,512);---------这里-------}这里面我比较小白。。。。。。

时间: 2024-11-06 07:31:17

c#下面用progressBar控件显示从服务器上面下载文件进度的问题的相关文章

vb.net的ProgressBar控件

ProgressBar(进度条)控件,是个水平放置的指示器,直观地显示某个操作正进行了多少时间.进度条并不显示计算机执行某项特定任务要花多少分钟或秒钟,它提供的是直观的视觉反馈,使用户确信没有理由中止操作或关掉计算机.进度条能减轻与等待复杂的运算结果有关的紧张和不安,提供了测量某项计算任务进度的切实措施.ProgressBar在工具箱中的图标如图所示: 1.Value.Maximum和Minimum属性 Value属性决定该控件被填充多少,其Maximum和Minimum属性设置该控件的界限.要

在C++中用ActiveX控件显示PDF文件

PDF介绍 PDF是"Portable Document Format 可移植文档格式"的缩写,它是Adobe公司开发的一种电子文档格式,已经成为国际通用的电子文档交换事实标准.PDF文件可以在各种平台下阅读.编辑.发布.该文件格式支持字体.图像.甚至任何附件的嵌入. Adobe公司提供了两种软件用于处理PDF文档,分别是Acrobat及Acrobat Reader:前者功能强大,不仅能阅读,还可以创建或编辑PDF文档,但要收费:后者只具备阅读功能,为免费软件. 用ActiveX控件显

android-多个testview控件显示问题

问题描述 多个testview控件显示问题 <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="#000000" android:textSize="18dip" android:background="#00FF00" android:text=&qu

getchildat i-安卓关于Gridview无法获取到第一个item并让其中不可见的控件显示的问题

问题描述 安卓关于Gridview无法获取到第一个item并让其中不可见的控件显示的问题 如图,我有一个相册,默认情况下只显示imageview,当点击删除的时候让覆盖在imageview上面的checkbox显示出来,代码如下: 现在问题来了,第一个item的checkebox弄死不出现,如下: 已疯,求拯救,xml文件代码如下: 解决方案 用getChildAt的方法就有问题,现在你是一屏幕能看到,如果一屏幕看不见,获取到的将是null 不过adapter怎么变,只要记住是数据驱动界面就行了

使用ASP.NET Atlas ListView控件显示列表数据

asp.net|控件|数据|显示 English Version: http://dflying.dflying.net/1/archive/113_display_listible_data_using_aspnet_atlas_listview_control.html 在这个系列中,我将介绍一些Atlas Sys.UI.Data中较高级的控件,包括: Sys.UI.Data.ListView:使用ASP.NET Atlas ListView控件显示列表数据 Sys.UI.Data.Item

C# 把指定控件显示在最上面

控件|显示 昨天有个朋友问我,怎么样处理重叠的控件,让指定的控件在最上面.我就很抓狂,很奇怪为什么会有这种需求,但昨天上班忙,没时间.今天早上来就写了一段代码试试,如下:SetMeTop是设置最上的函数,button1_Click是一个测试方法,经测试,这样是可行的.为什么要用一个ArrryList而不是直接用index来删除呢,是因为删除上层的一个控件后,会导致下面控件的index都加1,会产生一些异常.这只是一时乱写的函数.也许.net本身直接有方法来设置,我却不知道.呵呵..欢迎指教: A

winform-winfrom留言板的留言该用什么控件显示?

问题描述 winfrom留言板的留言该用什么控件显示? 我想做一个winfrom版的留言板程序,可是想来想去不知道该用什么控件显示别人所留的言,还可以对别人留的言进行回复,除了dgv,别的还有什么好的嘛? 解决方案 自定义控件+Repeater或者tablelayoutpanel

网页-primefaces的控件显示问题

问题描述 primefaces的控件显示问题 加了mobile声明 但是显示的还是网页控件不是手机控件

webbrowser-WebBrowser控件 显示的网页中的下拉框 无法使用键盘的上下按键

问题描述 WebBrowser控件 显示的网页中的下拉框 无法使用键盘的上下按键 代码如下: IWebBrowser2* iWebBrowser; VARIANT varMyURL; static CAxWindow WinContainer; LPOLESTR pszName=OLESTR("shell.Explorer.2"); RECT rc; GetClientRect(hWnd, &rc); WinContainer.Create(hWnd, rc, 0,WS_CHI