问题描述
我现在正在写一个基于http协议个文件上传下载的客户端,是根据ftp的方法来写的,但是有一个参数中我的不到文件的大小极其的郁闷代码如下面:publicvoiddownFile(){HttpWebRequestreqHttp;try{FileStreamoutputStream=newFileStream(filePath+"\"+fileName,FileMode.Create);//根据Uri创建httpWedrrequest的对象reqHttp=(HttpWebRequest)HttpWebRequest.Create(newUri("http://"+httpServerIp+"/"+fileName));//执行什么方法reqHttp.Method=WebRequestMethods.File.DownloadFile;//身份的验证reqHttp.Credentials=newNetworkCredential(httpUserID,httpPassWord);//获得服务器的请求HttpWebResponserespons=(HttpWebResponse)reqHttp.GetResponse();//从服务器上检索放松的数据流StreamhttpStream=respons.GetResponseStream();//获取相应所取得的长度longlc=respons.ContentLength;//设置缓存的大小intbufferSize=2048;//对取得的次数intreadCount;//设置缓存byte[]buff=newbyte[bufferSize];//读取数据readCount=httpStream.Read(buff,0,bufferSize);//循环对数据进行读出while(readCount>0){//从数据流中将数据写入流outputStream.Write(buff,0,bufferSize);//更新readCount中的数据readCount=httpStream.Read(buff,0,bufferSize);}//关闭所有的流httpStream.Close();outputStream.Close();respons.Close();}catch(Exceptionex){MessageBox.Show(ex.Source);}}
标志成红的部分就是获得要下载文件的响应的大小,但是为什么是0啊我想不通还有一个问题再我上传的时候为什么我对服务器上的文件夹选择上传的时候总是提醒我没有权限不让我操作哪个文件夹,是不是得吧文件夹变成资源写入到网页中才可以.因为我对测试目录下的主页index.html,文件可以获得响应,但是就是对文件夹不可仪.跪求!!!!高人指点
解决方案
解决方案二:
http://www.cnblogs.com/dyj057/archive/2008/04/16/1155861.html
解决方案三:
在while循环前面再加一行readCount=httpStream.Read(buff,0,bufferSize);
解决方案四:
在线聊天changjiangzhibin零号特工等级:发表于:2008-04-1701:40:402楼得分:0在while循环前面再加一行readCount=httpStream.Read(buff,0,bufferSize);我有啊
解决方案五:
学习中!!
解决方案六:
有点难度哦
解决方案七:
支持搂主,收藏