C# Excel文件中嵌入对象的读取
我有一个excel文件包含C# Excel文件中嵌入对象的读取,c#,asp.net,excel,C#,Asp.net,Excel,我有一个excel文件包含附件列,其中嵌入了另一个excel对象 我需要读取嵌入的excel文件并处理其数据 到目前为止,我习惯于读取普通excel文件并作为数据集进行检索 FileStream stream = File.Open(filePath, FileMode.Open, FileAccess.Read); //Reading from a binary Excel file ('97-2003 format; *.xls) IExcelDataReader excelReader
附件列
,其中嵌入了另一个excel对象
我需要读取嵌入的excel文件并处理其数据
到目前为止,我习惯于读取普通excel文件并作为数据集进行检索
FileStream stream = File.Open(filePath, FileMode.Open, FileAccess.Read);
//Reading from a binary Excel file ('97-2003 format; *.xls)
IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
// Reading from a OpenXml Excel file (2007 format; *.xlsx)
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
DataSet result = excelReader.AsDataSet();
excelReader.IsFirstRowAsColumnNames = true;
DataSet result = excelReader.AsDataSet();
while (excelReader.Read())
{
//excelReader.GetInt32(0);
}
excelReader.Close();
现在我想读取嵌入对象(excel文件)
是否有任何dll/组件/代码可以帮助我们读取excel文件中的嵌入对象?
注意:服务器中没有安装Microsoft Office软件包。因此,我不想使用Microsoft.Interoperability软件包您是否在某处发布了类似的示例文件?@SimonMourier我为您添加了该文件。请从此处查看文件此“Excel Reader”工具不支持此类数据。我尝试了EPPlus(),但它也不起作用。您必须修改Excel Reader的源代码才能处理此问题。从技术上讲,这些文件存在于XLSX中,如果您将其重命名为.ZIP文件并打开它,您将看到它们位于
xl\embeddings
路径中。@SimonMourier,非常感谢。我们有没有其他简单的方法可以使用一些FileStream读取这个xl\embeddings,然后获取包含的文件并使用ExcelReader进行读取您现在能做的最好的方法是使用适合您的任何.ZIP库打开该文件,并将该文件提取为.ZIP中的条目。