簡體   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