我正在评估SpreadsheetGear2012,我希望能够打开/保存所有类型的Excel文件:.xls,.xlsx,.xlsm和.xlsb。除了.xlsb之外,所有扩展都正常工作。
以下是创建简单.xlsb文件的代码:
SpreadsheetGear.FileFormat excelFormat = SpreadsheetGear.FileFormat.Excel12;
SpreadsheetGear.IWorkbookSet workbookSet = SpreadsheetGear.Factory.GetWorkbookSet();
SpreadsheetGear.IWorkbook workbook = workbookSet.Workbooks.Add();
workbook.SaveAs(@"D:\test.xlsb", excelFormat);
workbookSet.Workbooks.Close();
此代码在磁盘上创建文件,但它只有3KB,如果我尝试手动打开它,我会从标题中得到错误。 如果我直接从Excel创建.xlsb文件,它有12 KB。
这是我在这里失踪的吗?也许对于.xlsb文件我需要设置一些标题?
答案 0 :(得分:2)
我在SpreadsheetGear工作,并认为我可以清除所有这些:Excel12符号甚至不应该是SpreadsheetGear.FileFormat枚举中的一个选项,因为我们还不支持XLSB文件格式。
此符号意外包含在SpreadsheetGear 2012 for .NET(SpreadsheetGear2012.dll)的.NET 2.0版本中。您会注意到.NET 4.0版本(SpreadsheetGear2012.Core.dll)中(正确)丢失了它。鉴于我们从未完全实现此文件格式,尝试使用Excel12选项无疑会导致意外结果。
此外,我们将从我们产品的未来版本中删除此选项,因此您需要确保删除对它的任何引用。