繁体   English   中英

使用OpenXML打开Excel工作表时文件包含损坏的数据错误

[英]File contains corrupted data error when opening Excel sheet with OpenXML

我正在使用SharePoint 2013编写ItemAdded的事件接收器。我正在使用OpenXML读取电子表格。 当我尝试以编程方式打开位于SharePoint库中的日志文件时,出现以下错误:

文件包含损坏的数据

引发此错误的代码块是:

using (SpreadsheetDocument spreadsheet = SpreadsheetDocument.Open(mstream, false))
using (SpreadsheetDocument logsheet = SpreadsheetDocument.Open(logstream, false))

第一行通过,第二行(日志)中断。 它们都是从流中读取的。 电子表格是事件触发时要添加的项目,而日志表是SharePoint中当前存在的项目。

使用以下路径从数据流中打开电子表格:

string workbookpath = properties.ListItem.Web.Url + "/" + properties.ListItem.File.Url;

并使用数据流通过SharePoint中的直接URL打开日志表

string logFilePath = "http://SPSiteName/sites/SP/Dropbox/RuntimeLog.xml";

任何帮助或见解将不胜感激。

您的日志表是一个XML文件[.xml]。 这不是一个Excel文件[.XLSX](开放XML并不仅仅意味着XML)。 这就是为什么它失败了。

嗯,愚蠢的我忘记了设置Excel服务的读写权限。 我还在以下地方找到了很多有用的信息:

以编程方式从SharePoint库读取Excel文件

http://www.sharepointwithattitude.com/archives/61

从Excel文件读取数据

http://alancejacob.blogspot.in/2012/06/read-data-from-excel-file-and-insert-in.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM