Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 读取存储在SharePoint文档库中的excel文件_C#_Sharepoint 2010 - Fatal编程技术网

C# 读取存储在SharePoint文档库中的excel文件

C# 读取存储在SharePoint文档库中的excel文件,c#,sharepoint-2010,C#,Sharepoint 2010,我有一个excel文件存储在SharePoint文档库中。我需要读取这个excel文件,并从文件路径以编程方式获取数据 例如: SharePoint网站:http://servername:1000 Excel文件路径:http://servername:1000/ExcelDocs//ExcelFile.xlsx 正如我们看到的,我有存储在SharePoint文档库中的excel文件的路径。我需要从这个文件中获取数据。有什么想法吗 谢谢您可以从SPFile对象获取二进制数据,然后在第三方库中打

我有一个excel文件存储在SharePoint文档库中。我需要读取这个excel文件,并从文件路径以编程方式获取数据

例如: SharePoint网站:http://servername:1000

Excel文件路径:http://servername:1000/ExcelDocs//ExcelFile.xlsx

正如我们看到的,我有存储在SharePoint文档库中的excel文件的路径。我需要从这个文件中获取数据。有什么想法吗


谢谢

您可以从SPFile对象获取二进制数据,然后在第三方库中打开它

也可以使用,即Microsoft SDK

SPFile file = web.GetFile("http://servername:1000/ExcelDocs//ExcelFile.xlsx");
Stream dataStream = file.OpenBinaryStream();
SpreadsheetDocument document = SpreadsheetDocument.Open(dataStream, false);
Workbook workbook = document.WorkbookPart.Workbook;

以下是使用OpenXML的方法,您可以从SPFile对象获取二进制数据,然后在第三方库中打开它

也可以使用,即Microsoft SDK

SPFile file = web.GetFile("http://servername:1000/ExcelDocs//ExcelFile.xlsx");
Stream dataStream = file.OpenBinaryStream();
SpreadsheetDocument document = SpreadsheetDocument.Open(dataStream, false);
Workbook workbook = document.WorkbookPart.Workbook;

以下是使用OpenXML的主要方法实际上,您可以在不使用任何第三方组件的情况下读取Excel文件内容,只使用SharePoint功能

该解决方案演示了如何使用SharePoint REST service读取excel数据。关于此方法的另一点是,由于对SharePoint库没有任何依赖关系,因此既不引用服务器端程序集,也不引用客户端程序集

先决条件:必须进行配置

准备excel数据 假设以下excel文件

工作簿中包含以下项目的:

  • 表(如何操作)
  • 图表
将文件上载到SharePoint库之前,请转到
文件->浏览视图选项->选择工作簿中的项目,如下所示。然后保存文件并将其上载到SharePoint
文档库中

如何通过excel Services 2010 REST API读取excel数据 以下示例演示如何使用读取excel表格内容:

用法

该示例演示如何使用JSON格式读取表内容:

var credentials = new NetworkCredential(userName,password,domain);  
var client = new ExcelClient(webUri, credentials);
var tableData = client.ReadTable("Documents","ciscoexpo.xlsx", "CiscoSalesTable","html");
工具书类

事实上,您可以在不使用任何第三方组件的情况下读取Excel文件内容,仅使用SharePoint功能

该解决方案演示了如何使用SharePoint REST service读取excel数据。关于此方法的另一点是,由于对SharePoint库没有任何依赖关系,因此既不引用服务器端程序集,也不引用客户端程序集

先决条件:必须进行配置

准备excel数据 假设以下excel文件

工作簿中包含以下项目的:

  • 表(如何操作)
  • 图表
将文件上载到SharePoint库之前,请转到
文件->浏览视图选项->选择工作簿中的项目,如下所示。然后保存文件并将其上载到SharePoint
文档库中

如何通过excel Services 2010 REST API读取excel数据 以下示例演示如何使用读取excel表格内容:

用法

该示例演示如何使用JSON格式读取表内容:

var credentials = new NetworkCredential(userName,password,domain);  
var client = new ExcelClient(webUri, credentials);
var tableData = client.ReadTable("Documents","ciscoexpo.xlsx", "CiscoSalesTable","html");
工具书类

到目前为止您做了什么?我已将url中的excel文件存储到SharePoint根目录(layouts文件夹)中的临时文件夹中,但由于某些原因,临时文件夹未创建(拒绝访问)。我需要一种方法直接从文件url获取数据,而不必存储在临时位置到目前为止您做了什么?我已将url中的excel文件存储到SharePoint根目录(layouts文件夹)中的临时文件夹中,但由于某些原因,临时文件夹未创建(拒绝访问)。我需要一种方法直接从文件url获取数据,而不必存储在临时位置。您能告诉我这里是什么吗?它属于第三方图书馆吗?是的。它是ClosedXML库的一部分。链接位于我的答案的开头没有第三方库的任何方法?您可以使用OpenXML SDK,它不是第三方library@Dmitry多夫戈波利:我知道这是一个非常古老的帖子。但我也遇到了同样的问题。我正在尝试你的建议,但我的问题没有解决。我下载并安装了OpenXMLSDK,然后作为引用添加到导入到我页面的项目中,但SPFile关键字并没有弹出。有什么建议吗?你能告诉我这是什么吗?它属于第三方图书馆吗?是的。它是ClosedXML库的一部分。链接位于我的答案的开头没有第三方库的任何方法?您可以使用OpenXML SDK,它不是第三方library@Dmitry多夫戈波利:我知道这是一个非常古老的帖子。但我也遇到了同样的问题。我正在尝试你的建议,但我的问题没有解决。我下载并安装了OpenXMLSDK,然后作为引用添加到导入到我页面的项目中,但SPFile关键字并没有弹出。有什么建议吗?