ExcelDataReader 文档说它可以打开 .xlsb 文件。
using (var stream = File.Open(filePath, FileMode.Open, FileAccess.Read))
{
// Auto-detect format, supports:
// - Binary Excel files (2.0-2003 format; *.xls)
// - OpenXml Excel files (2007 format; *.xlsx, *.xlsb)
using (var reader = ExcelReaderFactory.CreateReader(stream))
{
// Choose one of either 1 or 2:
// 1. Use the reader methods
do
{
while (reader.Read())
{
// reader.GetDouble(0);
}
} while (reader.NextResult());
// 2. Use the AsDataSet extension method
var result = reader.AsDataSet();
// The result of each spreadsheet is in result.Tables
}
}
但是当我尝试打开 .xlsb 流时,它给出一个错误,指出它无法打开 zip 文件。
我尝试查看是否有任何免费的第三方库可以将 xlsb 转换为 XLS,但没有任何运气。
对于仍在为此苦苦挣扎的人,
ExcelDataReader
当前版本(3.6.0)不支持.xlsb
此功能仅在
v 3.7.0-develop00306
上实现,即使在那里它也有很多错误,现在在 v.3.7.0-develop00385
上的错误稍微少一些,但它仍然存在一些 严重的性能问题,我不推荐它用于大文件