首先要添加NPOI.dll程序集 https://yunpan.cn/cMeSTELJSXmJJ  访问密码 8d83

把里面的程序集都添加到引用里

下面的代码是从数据库导出到Excel

   public void DaoChuExcel(string path)         {  //path是导出的excel要保存的路径
using (Stream fs = new FileStream(path, FileMode.Create, FileAccess.Write))
{ //创建一个表
XSSFWorkbook work = new XSSFWorkbook();
//创建页
ISheet sheet = work.CreateSheet("zx");
List<MemberInfo> list = memDal.GetAllMemberByDelFlag();
//创建行
for (int i = ; i < list.Count; i++)
{
IRow row = sheet.CreateRow(i); //定义excel中的一行 //下面的Icell代表行中的单元格
ICell cell2 = row.CreateCell(, CellType.String);
cell2.SetCellValue(list[i].MemName); ICell cell3 = row.CreateCell(, CellType.String);
cell3.SetCellValue(list[i].MemMobilePhone); ICell cell4 = row.CreateCell(, CellType.String);
cell4.SetCellValue(list[i].MemAddress); ICell cell5 = row.CreateCell(, CellType.Numeric);
cell5.SetCellValue(list[i].MemType); ICell cell6 = row.CreateCell(, CellType.String);
cell6.SetCellValue(list[i].MemNum); ICell cell7 = row.CreateCell(, CellType.String);
cell7.SetCellValue(list[i].MemGender); ICell cell8 = row.CreateCell(, CellType.Numeric);
cell8.SetCellValue(list[i].MemDiscount); ICell cell9 = row.CreateCell(, CellType.Numeric);
cell9.SetCellValue(list[i].MemMoney); ICell cell10 = row.CreateCell(, CellType.Numeric);
cell10.SetCellValue(list[i].DelFlag); ICell cell11 = row.CreateCell(, CellType.String);
cell11.SetCellValue(list[i].SubTime.ToShortDateString()); ICell cell12 = row.CreateCell(, CellType.Numeric);
cell12.SetCellValue(list[i].MemIntegral); ICell cell13 = row.CreateCell(, CellType.String);
cell13.SetCellValue(list[i].MemEndTime.ToShortDateString()); ICell cell14 = row.CreateCell(, CellType.String);
cell14.SetCellValue(list[i].MemBirthday.ToShortDateString());
}
work.Write(fs); //最后把表写入IO流中 } }

下面是从excel中导入数据库

  public void ReadExcel(string path)
{
using (Stream fs = new FileStream(path,FileMode.Open,FileAccess.Read)) //从指定路径读入excel表
{
List<MemberInfo> list = new List<MemberInfo>();
//工作表
IWorkbook workbook = WorkbookFactory.Create(fs);
//获取页
ISheet sheet = workbook.GetSheetAt();
//遍历行
for (int i = ; i <=sheet.LastRowNum; i++)
{
MemberInfo mem = new MemberInfo();
//获取行
IRow row = sheet.GetRow(i); mem.MemName = row.GetCell().StringCellValue;
mem.MemMobilePhone = row.GetCell().StringCellValue;
mem.MemAddress = row.GetCell().StringCellValue;
mem.MemType = Convert.ToInt32(row.GetCell().NumericCellValue);
mem.MemNum = row.GetCell().StringCellValue;
mem.MemGender = row.GetCell().StringCellValue;
mem.MemDiscount = Convert.ToDouble(row.GetCell().NumericCellValue);
mem.MemMoney = row.GetCell().NumericCellValue;
mem.DelFlag = Convert.ToInt32(row.GetCell().NumericCellValue); mem.SubTime =Convert.ToDateTime(row.GetCell().StringCellValue);
mem.MemIntegral = Convert.ToInt32(row.GetCell().NumericCellValue);
mem.MemEndTime = Convert.ToDateTime(row.GetCell().StringCellValue);
mem.MemBirthday = Convert.ToDateTime(row.GetCell().StringCellValue);
list.Add(mem);
}
memDal.AddMemberInfo(list); //把数据体添加到数据库
} }

NPOI从数据库中导出数据到Excel的更多相关文章

  1. 手把手教你springboot中导出数据到excel中

    手把手教你springboot中导出数据到excel中 问题来源: 前一段时间公司的项目有个导出数据的需求,要求能够实现全部导出也可以多选批量导出(虽然不是我负责的,我自己研究了研究),我们的项目是x ...

  2. 将Oracle数据库中的数据写入Excel

    将Oracle数据库中的数据写入Excel 1.准备工作 Oracle数据库"TBYZB_FIELD_PRESSURE"表中数据如图: Excel模板(201512.xls): 2 ...

  3. python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图

    python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 # coding=utf-8 from openpyxl import load_workbook ...

  4. 对.NET中导出数据到EXCEL的几种方法探讨

    最近在做一个报表系统的时候,需要把DATASET中的数据导到EXCEL当中,于是在网上找了一遍,发现了好几种方法,本来以为应该差不多,但后来经过一一试用后,发现在性能上真的差别很大,现在就介绍一下,同 ...

  5. Kettle实现从数据库中提取数据到Excel

    因为有个日常提数,工作日每天都要从数据库中提取数据,转换为excel,再以邮件的形式发给用户. 刚好近期同事在研究使用kettle自动提数且完成邮件的发送,觉得很实用又挺有意思的就学了一下这个技能~ ...

  6. .net中从GridView中导出数据到excel(详细)

    1,创建数据源 找到要导出的GridView中的数据. 2,重写VerifyRenderingInServerForm方法. public override void VerifyRenderingI ...

  7. NPOI从数据库中调取数据直接导出到EXCEL中

    关于NPOI NPOI是POI项目的.NET版本,是由@Tony Qu(http://tonyqus.cnblogs.com/)等大侠基于POI开发的,可以从http://npoi.codeplex. ...

  8. Dynamics CRM2016 新功能之从CRM APP中导出数据至EXCEL

    新版的CRM对移动端做了很多的改进,这归咎于微软对APP端的越来越重视.自己装了个IOS版的APP,体验了下基本的功能,比原来好用很多很顺滑,这里要介绍的是一个新的数据导出功能. 咱们进入case列表 ...

  9. 从数据库中导出数据到.csv文件

    考虑到csv文件比xls文件格式容易控制,所以在这次导出中用的是.csv格式. protected function exportInfo($arr, &$err){ $nameInfo = ...

随机推荐

  1. postgresql 多实例运行

    创建新的实例, (下面所用到的9.1版本,如果为其他版本,可以用版本号替换9.1) sudo /usr/bin/pg_createcluster -U postgres                 ...

  2. 【算法】简单选择排序 O(n^2) 不稳定的 C语言

    简单选择排序 一.算法描述 假设序列中有N个元素: 第1趟找到第1到N个元素之间最小的一个,与第1个元素进行交换 第2趟找到第2到N个元素之间最小的一个,与第2个元素进行交换 第3趟找到第3到N个元素 ...

  3. ALTER TABLE

    •ALTER TABLE (表名) ADD (列名 数据类型); •ALTER TABLE (表名) MODIFY (列名 数据类型); •ALTER TABLE (表名) RENAME COLUMN ...

  4. [OpenGL]VS2010配置OpenGL开发环境

    opengl概述 OpenGL(Open Graphics Library)是一个跨编程语言.跨平台的专业图形程序接口. OpenGL是SGI公司开发的一套计算机图形处理系统,是图形硬件的软件接口,任 ...

  5. PGA突破pga_aggregate_target限制

    SQL> show parameter pga NAME         TYPE  VALUE ------------------------------------ ----------- ...

  6. 【HDOJ】3329 The Flood

    超简单BFS. /* 3329 */ #include <iostream> #include <queue> #include <cstdio> #include ...

  7. VS2010中编写宏添加作者信息与函数注释

    这里所说的宏是指通过一系列键盘组合键和可以插入自定义内容.下面介绍怎么编写一个自己的宏: 1.在Visual Studio 2010中按Alt+F11打开宏IDE: 2.打开后选择添加模块: 3.在弹 ...

  8. mt7601 driver

    http://download.csdn.net/detail/u011500307/7011649 http://my.oschina.net/fgq611/blog/180750 http://b ...

  9. a trick in reading and storing file in the exact way!

    read and write file is a very common operation regarding file mainuplation. However, the powerfull g ...

  10. 「Poetize5」Vani和Cl2捉迷藏

    描述 Description 这片树林里有N座房子,M条有向道路,组成了一张有向无环图.树林里的树非常茂密,足以遮挡视线,但是沿着道路望去,却是视野开阔.如果从房子A沿着路走下去能够到达B,那么在A和 ...