using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
namespace webcilent
{
public static class WebDavOp
{
///
/// 链接地址 例子是:http://test.anssy.com:8000/en
///
public static string ServerUrl;
///
/// 用户名称
///
public static string UserName;
///
/// 用户密码
///
public static string PassWd;
///
/// 上传数据
///
/// 文件地址
///
public static bool UploadFiles(string FileName)
{
Uri myURi = new System.Uri(TestUrl(ServerUrl)+ Path.GetFileName(FileName));
FileStream inStream = File.OpenRead(FileName);
try
{
WebRequest req = WebRequest.Create(myURi);
req.Credentials = new NetworkCredential(UserName, PassWd);
req.Method = “PUT”;
req.Timeout = System.Threading.Timeout.Infinite;
Stream outStream = req.GetRequestStream();
byte[] inData = new byte[4096];
int bytesRead = inStream.Read(inData, 0, inData.Length);
while (bytesRead > 0)
{
outStream.Write(inData, 0, bytesRead);
bytesRead = inStream.Read(inData, 0, inData.Length);
}
inStream.Close();
outStream.Close();
req.GetResponse();
return true;
}
catch (Exception ex)
{
return false;
}
}
/// <summary>
/// 下载数据
/// </summary>
/// <param name="pathset">下载到地址</param>
/// <param name="FileName">下载文件</param>
/// <returns></returns>
public static bool DownloadFile(string pathset,string FileName)
{
try
{
string SaveFileurl = pathset + "\\" + FileName;
string GetFileurl =TestUrl(ServerUrl) + FileName;
if (!Directory.Exists(pathset))
{
Directory.CreateDirectory(pathset);
}
WebClient client = new WebClient();
client.Credentials = new NetworkCredential(UserName, PassWd);
client.DownloadFile(GetFileurl, SaveFileurl);
return true;
}
catch
{
return false;
}
}
public static string TestUrl(string urlin)
{
string urlout = urlin;
if (urlin.LastIndexOf("/")<urlin.Length - 1)
{
urlout = urlin + "/";
}
return urlout;
}
}
}