在C#中的一个ASP.NET应用程序中,我们进行某些数据收集(SubSonic收集)并将其导出到Excel。我们还希望以特定格式导入Excel文件。我正在寻找可以用于此目的的库。
要求:
您推荐什么图书馆?您是否将其用于大量数据?还有其他解决方案吗?
现在,我正在使用一个简单的工具来生成HTML,稍后再由Excel加载该HTML,但是我却失去了一些功能,加上Excel在加载它时会抱怨。我不需要生成图表或类似的东西,只需导出原始数据即可。
我正在考虑平面CSV文件,但是Excel是客户要求。如果我有可以与Excel相互转换的工具,则可以直接使用CSV。鉴于Excel 2007是基于xml(和压缩)的文件格式,我猜想这种库应该很容易找到。但是,对我来说最重要的是您的评论和意见。
编辑:具有讽刺意味的是,在我看来,按照投票数最多的答案,最好的Excel导入和导出库根本没有导出。并非所有情况都如此,但我的情况如此。XLS文件仅支持64k行。XLSX最多支持1M。我尝试过的免费库的性能很差(当您有200k行时,一秒钟才加载一行)。我没有尝试过付费服务,因为当您需要的是快速的XLSX <-> CSV转换例程时,我觉得它们为它们提供的价值高估了。
如果您对代码有最大的控制权,那么我将全力以赴获取平面csv文件。只要确保您读入这些行并一次处理它们即可(将文档读到末尾并拆分将占用所有的内存- 与写入相同,将其流式输出)。
是的,用户必须先在excel中另存为CSV,然后才能进行处理,但是也许可以通过培训和在页面上提供清晰的说明来克服此限制?
最后,当您导出给客户时,如果将mime类型设置为text / csv,则通常会将Excel映射到该类型,以便用户看到的是“ Excel文件”。