c# webDav上传文件到服务器
2014-02-19 23:00
615 查看
此文这也是实际工作中的应用。之前有写通过webDAV方式取出文件的方法;这里提供通过webDav往服务器写入文件的方法;
这里假设已经搭建好了一个webDAV ,
WebDAV地址假设是:10.153.24.94/WebDavFolder/;
假设登陆的用户名是Administrator,登陆认证密码是:passWord.0 ;
假设要将本地:c:\test.dat文件上传到10.153.24.94/WebDavFolder/0/目录下;注意,在10.153.24.94/WebDavFolder/这个只是在10.153.24.94这台服务器上的IIS发布出来的地址,至于这个文件在实体路径,可以变通,可以是另外的服务器的目录;
但是一定要注意的是,一定给在IIS里面给应用池设定一致。而且要给Administrator权限,并且对文件夹的实体路径具有读写权限。否会404权限不够;
具体调用如下:
方法具体实现代码:C#
这里假设已经搭建好了一个webDAV ,
WebDAV地址假设是:10.153.24.94/WebDavFolder/;
假设登陆的用户名是Administrator,登陆认证密码是:passWord.0 ;
假设要将本地:c:\test.dat文件上传到10.153.24.94/WebDavFolder/0/目录下;注意,在10.153.24.94/WebDavFolder/这个只是在10.153.24.94这台服务器上的IIS发布出来的地址,至于这个文件在实体路径,可以变通,可以是另外的服务器的目录;
但是一定要注意的是,一定给在IIS里面给应用池设定一致。而且要给Administrator权限,并且对文件夹的实体路径具有读写权限。否会404权限不够;
具体调用如下:
string lstrWebUrl="http://10.153.24.94/WebDavFolder/0/test.dat"; //服务器上将要存的文件名 string lstrLocalFile = "c:\\test.dat"; //原文件 string lstrUserName="Administrator"; string lstrPassword="passWord.0"; UploadWebDavFile(lstrWebUrl,lstrLocalFile,lstrUserName,lstrPassword)
方法具体实现代码:C#
protected int UploadWebDavFile(string _WebFileUrl,string _LocalFile,string _UserName,string _Password) { try { System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)WebRequest.Create(_WebFileUrl); //Http和服务器交互 req.Credentials = new NetworkCredential(_UserName,_Password); //验证密码 req.PreAuthenticate = true; req.Method="PUT";//采用PUT方式 req.AllowWriteStreamBuffering=true; Stream reqStream = req.GetRequestStream(); FileStream rdm = new FileStream(_LocalFile,FileMode.Open); //打开本地文件流 byte[] inData = new byte[4096]; int byteRead = rdm.Read(inData,0,inData.Length); //二进制读文件 while(byteRead>0) { reqStream.Write(inData,0,byteRead); //响应流写入 byteRead = rdm.Read(inData,0,inData.Length); } rdm.Close(); reqStream.Close(); req.GetResponse(); //提交 } catch(Exception e) { return 0; } return 1; //正确返回 }
相关文章推荐
- c# 通过文件流方式上传文件到服务器
- 在C#客户端用HTTP上传文件到Java服务器
- C# FTP上传文件至服务器代码
- C# FTP上传文件至服务器代码
- C# FileUpload用法、获得上传图片详细信息 及 删除服务器文件
- C# FTP上传文件及文件夹至服务器代码
- C# 之 FTP服务器中文件上传与下载(二)
- C# WinForm 上传文件到服务器
- C# winform 上传文件到服务器
- C#FTP方式文件上传远程服务器
- C#上传文件到服务器
- C# Winform文件上传服务器
- C# Winform WebClient上传文件至服务器
- ASP.NET(C#)FileUpload实现上传限定类型和大小的文件到服务器
- C#向服务器上传文件
- Winform(C#)——向服务器上传文件代码
- IIS发布网站部分特殊配置--图片上传至别的服务器、iis配置 通配符应用程序映、iis配置 C#底层拦截.htm文件请求
- C# 之 FTP服务器中文件上传与下载(三)