项目中经常用到需要操作Excel文件,例如:导出数据库中的数据,读取数据等。但是电脑又没有安装office,不能直接调用微软的库,最后经过查找,找到这样的一个不用安装office的库。一个.NET库,可以读取/写入没有安装Microsoft Office的Office格式。没有COM +,没有互操作。

public class ExcelNpoiTest
{
/// <summary>
/// NPOI基础的Excel创建
/// </summary>
public static void CreateExcel()
{
//创建工作薄
HSSFWorkbook wk = new HSSFWorkbook();
//创建一个名称为mySheet的表
ISheet tb = wk.CreateSheet("mySheet");
for (int i = ; i < ; i++)
{
//创建行
IRow row = tb.CreateRow(i);
for (int j = ; j < ; j++)
{
//创建列
ICell cell = row.CreateCell(j);
//赋值
cell.SetCellValue($"[{i},{j}]");
}
}
//打开一个现有文件或创建一个新文件以进行写入。
using (FileStream fs = File.OpenWrite(@"D:\myxls.xls"))
{
//向打开的这个xls文件中写入mySheet表并保存。
wk.Write(fs);
}
} /// <summary>
/// NPOI基础的Excel读取
/// </summary>
public static void ReadExcel()
{
//打开现有文件以进行读取。
using (FileStream fs = File.OpenRead(@"D:\myxls.xls"))
{
//把文件写入wk中
HSSFWorkbook wk = new HSSFWorkbook(fs);
for (int i = ; i < wk.NumberOfSheets; i++)
{
//获取sheet
ISheet sheet = wk.GetSheetAt(i);
for (int j = ; j < sheet.LastRowNum; j++)
{
//获取行
IRow row = sheet.GetRow(j);
if (row != null)
{
for (int k = ; k < row.LastCellNum; k++)
{
//获取列
ICell cell = row.GetCell(k);
if (cell != null)
{
//获取值
Console.Write(cell.ToString());
}
}
}
Console.WriteLine();
}
}
}
} }

Excel的创建和读取NPOI的更多相关文章

  1. NPOI之使用EXCEL模板创建报表

    因为项目中要用到服务器端创建EXCEL模板 无法直接调用EXCEL 查了下发现NPOI很方便很简单就实现了 其中走了点弯路 第一次弄的时候发现输出的值是文本不是数字型无法直接计算公式 然后又发现打开报 ...

  2. C# 处理Excel公式(一)——创建、读取Excel公式

    对于数据量较大的表格,需要计算一些特殊数值时,我们通过运用公式能有效提高我们数据处理的速度和效率,对于后期数据的增删改查等的批量操作也很方便.此外,对于某些数值的信息来源,我们也可以通过读取数据中包含 ...

  3. C# -- 使用Aspose.Cells创建和读取Excel文件

    使用Aspose.Cells创建和读取Excel文件 1. 创建Excel Aspose.Cells.License li = new Aspose.Cells.License(); li.SetLi ...

  4. C# 读取Excel表格内容,以及NPOI的使用

    在实际的开发中,我们可能需要读写word或者Excel的内容,在我开发的项目中,需要读取Excel的内容,并将相对应的内容存储到数据库中,这里简单跟大家分享一下,希望能够帮助一些人. 我相信在读写wo ...

  5. excel2003和excel2007文件的创建和读取

    excel2003和excel2007文件的创建和读取在项目中用的很多,首先我们要了解excel的常用组件和基本操作步骤. 常用组件如下所示: HSSFWorkbook excel的文档对象 HSSF ...

  6. 一个由正则表达式引发的血案 vs2017使用rdlc实现批量打印 vs2017使用rdlc [asp.net core 源码分析] 01 - Session SignalR sql for xml path用法 MemCahe C# 操作Excel图形——绘制、读取、隐藏、删除图形 IOC,DIP,DI,IoC容器

    1. 血案由来 近期我在为Lazada卖家中心做一个自助注册的项目,其中的shop name校验规则较为复杂,要求:1. 英文字母大小写2. 数字3. 越南文4. 一些特殊字符,如“&”,“- ...

  7. C#无限极分类树-创建-排序-读取 用Asp.Net Core+EF实现之方法二:加入缓存机制

    在上一篇文章中我用递归方法实现了管理菜单,在上一节我也提到要考虑用缓存,也算是学习一下.Net Core的缓存机制. 关于.Net Core的缓存,官方有三种实现: 1.In Memory Cachi ...

  8. [转载]MongoDB学习 (四):创建、读取、更新、删除(CRUD)快速入门

    本文介绍数据库的4个基本操作:创建.读取.更新和删除(CRUD). 接下来的数据库操作演示,我们使用MongoDB自带简洁但功能强大的JavaScript shell,MongoDB shell是一个 ...

  9. Cookie操作类、 包括创建、读取、修改、获取、销毁cookie

    Cookie操作类. 包括创建.读取.修改.获取.销毁cookie import java.util.Hashtable; import java.util.Iterator; import java ...

随机推荐

  1. ssm整合——Spring配置(2)

    配置Spring 1. 环境准备 使用之前搭建Mabatis的环境 1.1 新建目录 新建spring的service业务逻辑包 在resources目录下新建spring的配置文件:applicat ...

  2. 运用Java调用Kettle Job和Trans(带参数)

    1.首先创建一个kettle trans 2.对表输入进行编辑 ${dateNow}为要传入的参数. 3.代码编写 首先需要把包导入 import org.pentaho.di.core.Kettle ...

  3. 记mysql条件分支语句CASE WHEN THEN ELSE END的使用

    记一次基于mysql数据库查询时条件分支语句使用 表达式格式:CASE column WHEN 条件1 THEN 表达式1 WHEN 条件2 THEN 表达式2 .... ELSE 表达式 END [ ...

  4. SpringBoot微服务电商项目开发实战 --- 模块版本号统一管理及Redis集成实现

    上一篇文章总结了基于SpringBoot实现分布式微服务下的统一配置.分环境部署配置.以及服务端模块的分离(每一个提供者就是一个独立的微服务).微服务落地.Dubbo整合及提供者.消费者的配置实现.本 ...

  5. UWP 更强大的文件获取能力

    默认情况下,通用 Windows 平台 (UWP) 应用可以访问特定文件系统位置. 应用也可以通过文件选取器或通过声明功能访问其他位置. 在创建新的应用时,默认情况下你可以访问以下文件系统位置: 1. ...

  6. C#中怎样连接数据库并将查询结果转为实体类以及如何加入事务

    场景 新建一个程序,需要对数据的表进行查询并将查询结果转换为实体类,然后将多个实体类 再插入到另一个数据库的表中,执行插入的过程中要使用事务. 注: 博客主页: https://blog.csdn.n ...

  7. Redis学习二(数据操作).

    key 操作 删除 key:del key 批量删除key:redis-cli -a(密码)keys "QXJ_*"| xargs redis-cli -a(密码)del 查看所有 ...

  8. C#中try catch中throw ex和throw方式抛出异常有何不同_异常捕获堆栈丢失问题

    前言,最近遇到一个使用try-catch异常捕获后记录一下日志,然后再抛出该异常后,异常堆栈里无法显示准确的堆栈地址的问题?   其实以前也遇到过类似问题,没有重视,这次好好研究了下,并上度娘上找了找 ...

  9. js 淡入淡出的tab选项卡

    代码如下 <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF- ...

  10. MySQL 排错-解决MySQL非聚合列未包含在GROUP BY子句报错问题

    排错-解决MySQL非聚合列未包含在GROUP BY子句报错问题 By:授客 QQ:1033553122   测试环境 win10 MySQL 5.7 问题描述: 执行类似以下mysql查询, SEL ...