昨天在微信群里听到老牌Excel开发利器NPOI的作者瞿总说4.6.1版本的NPOI已经支持.NET Standard 2.0了,这也就意味着你可以在.NET Core中使用NPOI了。

作者:依乐祝

原文地址 :https://www.cnblogs.com/yilezhu/p/10269281.html

写在前面

曾经的.NET Framework时代就很喜欢使用这个组件来对Excel的进行操作,可是随着.NET Core时代的到来以及NPOI不支持.NET Core所以就找到了园子里的大神杨晓东对NPOI的.NET Core的移植版,可是使用的过程中的如果对这个移植的插件进行深入的使用的话还是有部分问题,可能正如杨晓东大神自己所说:“去年的那个版本是针对于 .NET Core 1.0 的,从发布截止现在在 NuGet 大概有 2K 多的下载量,说明还是有很多同学在使用 NPOI 的,社区中也得到了很多同学的推广。 但是上一个移植的版本也有诸多缺陷和 bug,在 Github 上也收到了一些 Issue 进行反馈,很多 Bug 可能是移植过程中的bug,但是对于这些 Bug 可能我也无能为力,因为 NPOI 的代码是非常庞大和复杂的。”

不过也再次特别感谢下杨晓东大神对NPOI的.NET Core版本的移植也才能让我们在.NET Core1.0以及.NET Core2.0的一段时间内继续使用这个NPOI。

有兴趣的小伙伴可以看下杨晓东大神的版本这里是介绍《NET Core 2.0 开源Office组件 NPOI

因此在得知NPOI的作者瞿总已经完成对NPOI的升级并支持.NET Standard 2.0后特此把这个好消息告诉全体.NET Core开发者们。自此我们又可以尽情的在.NET Core中继续使用这个开源的老牌Office组件了!反正我表示挺开心的!而且如果你在使用的过程中有任何问题都可以在GitHub上对作者提issue,作者也会以迅雷不及掩耳之势之势进行修复

什么是NPOI

说了半天NPOI已经可以在.NET Core中使用了,可能对于新手朋友还是不知道这玩意究竟是什么?其实你可以看看百度百科《NPOI》里面有详细的讲述。我只能跟你说使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写操作,十分方便。

另外NPOI的原作者的GitHub地址是:https://github.com/tonyqus/npoi

里面也有详尽的描述

如何使用

通过Nuget直接添加NPOI的最新引用即可使用

Install-Package NPOI -Version 2.4.1

然后你就可用像之前一样进行操作了!

但是如果你想运行在Linux上可能需要注意一下:

由于NPOI使用System.Drawing.Common,因此必须在Linux系统上安装libgdiplus和libc6。

Ubuntu 16.04及以上

apt-get install libgdiplus libc6-dev

ln -s /usr/lib/libgdiplus.so /usr/lib/gdiplus.dll

然后就可以在Linux系统上跑起来了!

例子

我们有很多例子可供您学习如何使用NPOI。

请查看https://github.com/tonyqus/npoi/tree/master/examples

文件夹名称 示例描述
HSSF 有关Excel 97-2003格式的示例(* .xls)
XSSF 有关Excel 2007+格式的示例(* .xlsx)
XWPF 有关Word 2007+格式(* .docx)的示例
POIFS 关于OLE2文档/ ActiveX文档的示例
OOXML 有关OpenXML文件的示例

第三方博客

使用NPOI - C#和WEB API导出到Excel

使用NPOI在.NET中构建漂亮的XLS文档

如何使用NPOI阅读Excel 2007文档

如何使用NPOI创建Excel电子表格

NPOI 2.0 - 将Excel XLS文档转换为HTML格式

NPOI与Excel表和动态图表

总结

今天给大家介绍了一款.NET Core Office开发利器NPOI已经支持.NET Core了!希望对大家有所帮助!今后我们的实战教程之CMS系统里面对Excel的操作也将使用这个组件,届时我讲实战讲解如何使用这个组件,最后感谢大家的阅读。

老牌开源Office操作组件NPOI现已支持.NET Core的更多相关文章

  1. 开源RabbitMQ操作组件

    开源RabbitMQ操作组件 对于目前大多的.NET项目,其实使用的技术栈都是差不多,估计现在很少用控件开发项目的了,毕竟一大堆问题.对.NET的项目,目前比较适合的架构ASP.NET MVC,ASP ...

  2. 开源word操作组件DocX的记录

    开源word操作组件DocX的记录 使用开源word操作组件DocX的记录 1.DocX简介 1.1 简介 DocX是一个在不需要安装word的情况下对word进行操作的开源轻量级.net组件,是由爱 ...

  3. DocX开源WORD操作组件的学习系列四

    DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...

  4. DocX开源WORD操作组件的学习系列三

    DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...

  5. DocX开源WORD操作组件的学习系列二

    DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...

  6. DocX开源WORD操作组件的学习系列一

    DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...

  7. 使用开源word操作组件DocX的记录

    1.DocX简介 1.1 简介 DocX是一个在不需要安装word的情况下对word进行操作的开源轻量级.net组件,是由爱尔兰的一个叫Cathal Coffey的博士生开发出来的.DocX使得操作w ...

  8. 开源:Taurus.MVC 框架 (已支持.NET Core)

    为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...

  9. c#开源Excel操作库--NPOI

    前言 以前也用C#操作过excel,用的是OleDb或者offic的com组件,但是总是非常的麻烦,依赖限制较多,所以果断寻找开源方案,JAVA上面已经有非常成熟的POI,就这样,找到了移.Net的移 ...

随机推荐

  1. GitHub 开源的 MySQL 在线更改 Schema 工具【转】

    本文来自:https://segmentfault.com/a/1190000006158503 原文:gh-ost: GitHub's online schema migration tool fo ...

  2. IIS配置HTTPS

    1,新建网站,选中类型为 https,然后更改SSL证书为你配置的SSL证书, 对于SSL证书的配置是这样的 点开第二步,然后点击 创建自签名证书 确定以后点开网站看到有个SSL, 双击进去,再选中 ...

  3. 强大的数据库工具 dbForge Studio ForMySql

    优点: 1.可以将MySql数据库操作仿 sqlserver 的操作方式,便于操作 2.强大的比较拷贝能力.菜单栏上的 Comparison 的功能,可以比较两个数据库的差别,同时可以将数据库Copy ...

  4. WPF 可触摸移动的ScrollViewer控件

    ListBox支持触摸滑动,而ScrollViewer默认不支持.需要设置PanningMode属性,如果不设置PanningMode,如何自定义触摸滑动? ScrollViewer如需要添加上下/左 ...

  5. IaaS,PaaS,SaaS 的区别

    原文:http://www.ruanyifeng.com/blog/2017/07/iaas-paas-saas.html 越来越多的软件,开始采用云服务. 云服务只是一个统称,可以分成三大类. Ia ...

  6. [MySQL] mysql int后面的数字与前导零填充

    1.int或者tinyint等数值型字段的存储范围已经是固定的,和类型相关2.后面的数字只与显示有关,并且是在开启了zerofill前导零填充的前提下 3.显示的时候,在前面用0补全了 create ...

  7. Elasticsearch修改network后启动失败

    修改 /config/elasticsearch.yml(我的安装目录是:/var/www/elasticsearch-6.4.2/elasticsearch-6.4.2), network.host ...

  8. js实现消息滚动效果

    <div class="inform" style=""> <div style="height:35px; overflow:hi ...

  9. 都2019年了,还问GET和POST的区别

    摘要: 对比GET与POST. 原文:都9102年了,还问GET和POST的区别 作者:程淇铭 Fundebug经授权转载,版权归原作者所有. 1. 前言 最近看了一些同学的面经,发现无论什么技术岗位 ...

  10. js事件冒泡机制

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...