C# 如何以编程方式从sharepoint网站下载文件?
我有一个sharepoint网站,它有一个excel电子表格,我需要按计划下载C# 如何以编程方式从sharepoint网站下载文件?,c#,file,download,C#,File,Download,我有一个sharepoint网站,它有一个excel电子表格,我需要按计划下载 这可能吗?指向Sharepoint中文档的链接应为静态URL。在任何解决方案中都可以使用该URL来获取日程安排中的文件。为什么不直接使用wget.exe。您可以将该行放入批处理文件中,并通过windows scheduler运行该批处理文件。您还可以执行以下操作: try { using (WebClient client = new WebClient())
这可能吗?指向Sharepoint中文档的链接应为静态URL。在任何解决方案中都可以使用该URL来获取日程安排中的文件。为什么不直接使用
wget.exe
。您可以将该行放入批处理文件中,并通过windows scheduler运行该批处理文件。您还可以执行以下操作:
try
{
using (WebClient client = new WebClient())
{
client.Credentials = new NetworkCredential("username", "password", "DOMAIN");
client.DownloadFile(http_path, path);
}
}
catch (Exception ex)
{
MessageBox.Show("Error: " + ex.Message);
}
是,可以从sharepoint下载该文件。 获得文档的url后,可以使用HttpWebRequest和HttpWebResponse下载该文档 附加示例代码
DownLoadDocument(string strURL, string strFileName)
{
HttpWebRequest request;
HttpWebResponse response = null;
request = (HttpWebRequest)WebRequest.Create(strURL);
request.Credentials = System.Net.CredentialCache.DefaultCredentials;
request.Timeout = 10000;
request.AllowWriteStreamBuffering = false;
response = (HttpWebResponse)request.GetResponse();
Stream s = response.GetResponseStream();
// Write to disk
if (!Directory.Exists(myDownLoads))
{
Directory.CreateDirectory(myDownLoads);
}
string aFilePath = myDownLoads + "\\" + strFileName;
FileStream fs = new FileStream(aFilePath, FileMode.Create);
byte[] read = new byte[256];
int count = s.Read(read, 0, read.Length);
while (count > 0)
{
fs.Write(read, 0, count);
count = s.Read(read, 0, read.Length);
}
// Close everything
fs.Close();
s.Close();
response.Close();
}
您还可以使用复制服务的getItemAPI下载文件
string aFileUrl = mySiteUrl + strFileName;
Copy aCopyService = new Copy();
aCopyService.UseDefaultCredentials = true;
byte[] aFileContents = null;
FieldInformation[] aFieldInfo;
aCopyService.GetItem(aFileUrl, out aFieldInfo, out aFileContents);
文件可以作为字节数组进行检索。是否有软件可以执行此操作?上面回答的wget将执行此操作。