日期:2014-05-20  浏览次数:21108 次

求一段上传文件代码(不用FTP)
我想把C:\R62.html上传到IIS指定的
http://localhost/WebService/Cache目录下去,代码如下
FileStream   fs   =   new   FileStream(@ "C:\R62.html ",   FileMode.Open,   FileAccess.Read);
BinaryReader   r   =   new   BinaryReader(fs);
byte[]   postArray   =   r.ReadBytes((int)fs.Length);
System.Net.WebClient   myWebClient   =   new   System.Net.WebClient();
myWebClient.Credentials   =   System.Net.CredentialCache.DefaultCredentials;
Stream   postStream   =   myWebClient.OpenWrite( "http://localhost/WebService/Cache/R62.html ", "PUT ");
if(postStream.CanWrite)
{      
      postStream.Write(postArray,0,postArray.Length);
}
else
{
throw   new   Exception( "文件目前不可写. ");
}
postStream.Close();

程序运行正常,无报错,但文件未上传
请问哪里出错了啊

------解决方案--------------------
晕 怎么能这样做呢?

你应该再写一个接收文件的程序

如: a.aspx
程序里面 用Request.PostFile来接收保存 直接上传是不可以的
------解决方案--------------------
程序里面 用Request.PostFile来接收保存,用这个比较好!但一定要注意文件的读写权限问题,是可写的才行
------解决方案--------------------
但为什么
Stream postStream = myWebClient.OpenWrite( "E:/R62.html ", "PUT ");
这样上传久可以呢
=================================================================
HTTP协议 发送一个put请求而已 当然不会出错了!