前言

去年 12 月,我移植了大家所熟知 NPOI 到 .NET Core 版本,这里是当时发的博客,当时得到了很多同学的支持,社区反应也很好,在这里非常感谢当时推荐的朋友们。

去年的那个版本是针对于 .NET Core 1.0 的,从发布截止现在在 NuGet 大概有 2K 多的下载量,说明还是有很多同学在使用 NPOI 的,社区中也得到了很多同学的推广。 但是上一个移植的版本也有诸多缺陷和 bug,在 Github 上也收到了一些 Issue 进行反馈,很多 Bug 可能是移植过程中的bug,但是对于这些 Bug 可能我也无能为力,因为 NPOI 的代码是非常庞大和复杂的。

随着 .NET Core 2.0 的发布,我又重新移植了一遍 NPOI,注意是重新移植而不是从 1.0 版本迁移过来,由于 .NET Standard 2.0 的 API 增加了很多,所以移植过程还算顺利,这次移植应该是最大限度的保持了 NPOI 的原汁原味,敬请客官体验。

什么是 NPOI

NPOI 是 构建在POI 3.x 版本之上的一个C#库,NPOI 可以在没有安装Office的情况下对 Word 或 Excel 文档进行读写操作。

POI是一个开源 的Java 读写Excel、WORD等微软OLE2组件文档的项目。

NPOI 由瞿总和他的团队由 Apache POI 移植到 .NET 的,以下是NPOI Github 地址:
https://github.com/tonyqus/npoi

Getting Started

移植版的 NPOI 是基于 .NET Standard 2.0 的,也就是说你可以在基于 .NET Core 2.0, .NET Frameework 4.6.1 等项目中进行引用使用。

新的 NPOI Github 代码仓库仍然使用了之前移植的仓库,另外开了一个新的分支(standard2.0)来存放新版本的代码,现在这个仓库已经不在我个人的 Github 下了,已经贡献给了 .NET China Foundation,下面是 Github 地址:

NPOI Standard 2.0 (Apache 2.0):
https://github.com/dotnetcore/NPOI

新的 NPOI 几个库打包成为了一个 DLL,已经发布到了 NuGet,你可以在 Visual Studio 包管理器命令窗口中通过以下命令来安装:

PM> Install-Package DotNetCore.NPOI

使用方法就不在这里描述了,使用方式包括命名空间都和 NPOI 一样,不会的百度即可。

PS : NPOI 好像是唯一能同时支持 office 2003,2007+ 的库

总结

如果你在使用的过程中有什么问题,可以在 Github 给我们提交 Issue,当然最好你能够参与进来给我们提交 PR,因为社区项目是需要大家共同来经营的。

另外给我的另外一个开源项目 CAP 打个广告。

CAP 是一个在 .NET Core 中实现分布式事务及EventBus 的解决方案,如果你正在构建分布式或者微服务系统欢迎关注 Star 一下。

https://github.com/dotnetcore/CAP

原文地址:http://www.cnblogs.com/savorboard/p/dotnetcore-npoi.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

.NET Core 2.0 开源Office组件 NPOI相关推荐

  1. 老牌开源Office操作组件NPOI现已支持.NET Core

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

  2. ASP.Net Core 2.0中的Razor Page不是WebForm

    随着.net core2.0的发布,我们可以创建2.0的web应用了.2.0中新东西的出现,会让我们忘记老的东西,他就是Razor Page.下面的这篇博客将会介绍ASP.Net Core 2.0中的 ...

  3. ASP.NET Core 2.0 自定义 _ViewStart 和 _ViewImports 的目录位置

    在 ASP.NET Core 里扩展 Razor 查找视图目录不是什么新鲜和困难的事情,但 _ViewStart 和 _ViewImports 这2个视图比较特殊,如果想让 Razor 在我们指定的目 ...

  4. Razor Page–Asp.Net Core 2.0新功能 Razor Page介绍

    Razor Page介绍 前言 上周期待已久的Asp.Net Core 2.0提前发布了,一下子Net圈热闹了起来,2.0带来了很多新的特性和新的功能,其中Razor Page引起我的关注,作为web ...

  5. .NET Core 3.0 中的新变化

    译者:楚人Leo 译文:http://www.cnblogs.com/leolion/p/10585834.html 原文:https://msdn.microsoft.com/en-us/magaz ...

  6. 记录:成功配置 centos + nginx + .net core 2.0

    用到的软件如下 xshell,xftp,vs2017.3,centos 7.3 64位 安装环境 aliyun centos 7.3 64位 安装.net core 2.0 依赖的组件 yum ins ...

  7. .NET Core 首例 Office 开源跨平台组件(NPOI Core)

    前言 最近项目中,需要使用到 Excel 导出,找了一圈发现没有适用于 .NET Core的,不依赖Office和操作系统限制的 Office 组件,于是萌生了把 NPOI 适配并移植到 .NET C ...

  8. .NET Core 1.0发布:微软开源跨平台大布局序幕

    在6月27日的红帽DevNation峰会上,微软正式发布了.NET Core 1.0.ASP.NET 1.0和Entity Framework Core 1.0,这些产品将全部支持Windows.OS ...

  9. .NET Core 3.0之创建基于Consul的Configuration扩展组件

    经过前面三篇关于.NET Core Configuration的文章之后,本篇文章主要讨论如何扩展一个Configuration组件出来.如果前面三篇文章没有看到,可以点击如下地址访问 .NET Co ...

最新文章

  1. linux之用户态和内核态
  2. 预测流失准确率超 82%,这个功能让“防流失+促留存大于 2”
  3. 设计模式在Netty中的应用-迭代器模式源码举例
  4. Ubuntu系统的安装与使用:[3]搜狗输入法安装
  5. 与时俱进 | 博客现已运行在 .NET Core 3.0 及 Azure 上
  6. 怎么保证读取最新数据_Kafka怎么保证数据不丢失?
  7. 从天而降的文字,文字掉落效果
  8. css3 中心点,用css3实现打点效果实例讲解
  9. 抽象工厂模式_设计模式(3) 抽象工厂模式
  10. 美男子的JavaScript笔记,望能助君留住秀发
  11. APP测试工具大全,建议收藏
  12. vellum 简单Bear毛发
  13. windows 环境MySQL 安装启动 、重新安装
  14. ContexIoT: Towards Providing Contextual Integrity to Appified IoT Platforms
  15. 【SQL学习笔记】之数据定义语言(DDL)
  16. 数据库常用的操作命令
  17. 如何创作一款商业级的安卓独立应用
  18. 烦死啦!U80GT的BIOS刷坏了!
  19. 2022电工(初级)考试题库及模拟考试
  20. [区块链]回归初心——关于DAO的深度再思考

热门文章

  1. 解决windows系统80端口被占用问题
  2. 从零开始来看一下Java泛型的设计
  3. 《Java线程与并发编程实践》—— 2.3 谨防活跃性问题
  4. [转]Excel导入异常Cannot get a text value from a numeric cell解决
  5. bitmapdata的知识点
  6. Rider 2021.3 Beta 现已推出
  7. .NET 6新特性试用 | Controller支持IAsyncDisposable
  8. 关于 .NET 与 JAVA 在 JIT 编译上的一些差异
  9. C# 对接微信支付时生成符合 RFC3339 标准的日期时间字符串
  10. 使用表达式自定义Serilog输出格式