我有一个程序当前通过 SpreadsheetML 文件输出 Excel。我使用流构建这些。这对于 Excel 来说空间效率非常低;这些文件可以是其他 Excel 二进制格式的 5 到 6 倍。
我想输出二进制 excel 格式,例如 .xls 或 .xlsx,但我不想让程序的安装依赖于 Office。有些用户可能安装了它,有些用户可能没有。我怎样才能优雅地处理这个?是否可以不将程序集作为依赖项,但基于启用二进制输出的用户仍使用程序集?
编辑:
在回顾一些老问题时,我意识到我应该一直在问如何检查 Office PIA 是否在系统上,如果可用则使用它们,但在没有时优雅地处理情况并使用 SpreadsheetML。