小编典典

导入和导出Excel-最好的库是什么?[关闭]

c#

在C#中的一个ASP.NET应用程序中,我们进行某些数据收集(SubSonic收集)并将其导出到Excel。我们还希望以特定格式导入Excel文件。我正在寻找可以用于此目的的库。

要求:

  • Excel 2007文件(Excel 2003是否支持超过64k行?我还需要更多。)
  • 在服务器上不需要Excel
  • 接受类型化的集合,如果可以,则尝试将数字字段作为Excel中的数字放置。
  • 适用于大型文件(100k至10M)-足够快。
  • 导出GUID时不会崩溃!
  • 无需花钱(没有像aspose那样的企业库)。免费总是很棒,但可以成为商业图书馆。

您推荐什么图书馆?您是否将其用于大量数据?还有其他解决方案吗?

现在,我正在使用一个简单的工具来生成HTML,稍后再由Excel加载该HTML,但是我却失去了一些功能,加上Excel在加载它时会抱怨。我不需要生成图表或类似的东西,只需导出原始数据即可。

我正在考虑平面CSV文件,但是Excel是客户要求。如果我有可以与Excel相互转换的工具,则可以直接使用CSV。鉴于Excel
2007是基于xml(和压缩)的文件格式,我猜想这种库应该很容易找到。但是,对我来说最重要的是您的评论和意见。


编辑:具有讽刺意味的是,在我看来,按照投票数最多的答案,最好的Excel导入和导出库根本没有导出。并非所有情况都如此,但我的情况如此。XLS文件仅支持64k行。XLSX最多支持1M。我尝试过的免费库的性能很差(当您有200k行时,一秒钟才加载一行)。我没有尝试过付费服务,因为当您需要的是快速的XLSX
<-> CSV转换例程时,我觉得它们为它们提供的价值高估了。


阅读 259

收藏
2020-05-19

共1个答案

小编典典

如果您对代码有最大的控制权,那么我将全力以赴获取平面csv文件。只要确保您读入这些行并一次处理它们即可(将文档读到末尾并拆分将占用所有的内存-
与写入相同,将其流式输出)。

是的,用户必须先在excel中另存为CSV,然后才能进行处理,但是也许可以通过培训和在页面上提供清晰的说明来克服此限制?

最后,当您导出给客户时,如果将mime类型设置为text / csv,则通常会将Excel映射到该类型,以便用户看到的是“ Excel文件”。

2020-05-19