如何使用C#创建Excel电子表格而不需要在运行代码的计算机上安装Excel?
当前回答
OpenXML也是一个很好的选择,它有助于避免在服务器上安装MS Excel。Microsoft提供的Open XML SDK 2.0简化了操作Open XML包和包中的底层Open XML架构元素的任务。开放式XML应用程序编程接口(API)封装了开发人员在开放式XML包上执行的许多常见任务。
看看OpenXML:有助于避免在服务器上安装MS Excel的替代方案
其他回答
我成功地使用了以下开源项目:
用于OOXML格式的ExcelPackage(Office 2007)XLS格式的NPOI(Office 2003)。NPOI 2.0(Beta版)也支持XLSX。
看看我的博客帖子:
在C中创建Excel电子表格.XLS和.XLSX#
带有Excel表格和动态图表的NPOI
我使用了几个选项:
如果XLSX是必须的:ExcelPackage是一个很好的开始,但当开发人员停止工作时就夭折了。ExML不是一个坏选项,我仍在一些生产网站上使用它。
不过,对于我的所有新项目,我都使用NPOI,即Apache POI的.NET端口。NPOI 2.0(Alpha)也支持XLSX。
前段时间,我在NPOI上创建了一个DLL。使用它非常简单:
IList<DummyPerson> dummyPeople = new List<DummyPerson>();
//Add data to dummyPeople...
IExportEngine engine = new ExcelExportEngine();
engine.AddData(dummyPeople);
MemoryStream memory = engine.Export();
你可以在这里阅读更多。
顺便说一句,它是100%开源的。随时使用、编辑和共享;)
http://www.codeproject.com/KB/cs/Excel_and_C_.aspx<=为什么不使用内置的windows功能,只需在服务器上安装office,您安装的任何应用程序都可以自动化。
使用本机方法就容易多了。
如果安装了它,你就可以使用它,这是windows中最棒、使用率最低的功能,在过去的好日子里,它被称为COM,它为你节省了大量时间和痛苦。
或者更简单地使用ref lib MS供应品-http://csharp.net-informations.com/excel/csharp-create-excel.htm
您可以使用ExcelXmlWriter。
它工作得很好。
推荐文章
- 实体框架核心:在上一个操作完成之前,在此上下文中开始的第二个操作
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 如何使用JSON确保字符串是有效的JSON。网
- AppSettings从.config文件中获取值
- 通过HttpClient向REST API发布一个空体
- 如何检查IEnumerable是否为空或空?
- 自动化invokerrequired代码模式
- 没有ListBox。SelectionMode="None",是否有其他方法禁用列表框中的选择?
- 在c#代码中设置WPF文本框的背景颜色
- 在c#中,什么是单子?
- c#和Java中的泛型有什么不同?和模板在c++ ?
- c#线程安全快速(est)计数器
- 如何将此foreach代码转换为Parallel.ForEach?
- 如何在iis7应用程序池中设置。net Framework 4.5版本