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

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

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

 1   public void DaoChuExcel(string path) 2         {  //path是导出的excel要保存的路径
 3             using (Stream fs = new FileStream(path, FileMode.Create, FileAccess.Write))
 4             {  //创建一个表
 5                 XSSFWorkbook work = new XSSFWorkbook();
 6                //创建页
 7                 ISheet sheet = work.CreateSheet("zx");
 8                 List<MemberInfo> list = memDal.GetAllMemberByDelFlag(0);
 9                //创建行
10                 for (int i = 0; i < list.Count; i++)
11                 {
12                     IRow row = sheet.CreateRow(i); //定义excel中的一行
13
14
17                       //下面的Icell代表行中的单元格
18                     ICell cell2 = row.CreateCell(0, CellType.String);
19                     cell2.SetCellValue(list[i].MemName);
20
21                     ICell cell3 = row.CreateCell(1, CellType.String);
22                     cell3.SetCellValue(list[i].MemMobilePhone);
23
24                     ICell cell4 = row.CreateCell(2, CellType.String);
25                     cell4.SetCellValue(list[i].MemAddress);
26
27                     ICell cell5 = row.CreateCell(3, CellType.Numeric);
28                     cell5.SetCellValue(list[i].MemType);
29
30                     ICell cell6 = row.CreateCell(4, CellType.String);
31                     cell6.SetCellValue(list[i].MemNum);
32
33                     ICell cell7 = row.CreateCell(5, CellType.String);
34                     cell7.SetCellValue(list[i].MemGender);
35
36                     ICell cell8 = row.CreateCell(6, CellType.Numeric);
37                     cell8.SetCellValue(list[i].MemDiscount);
38
39                     ICell cell9 = row.CreateCell(7, CellType.Numeric);
40                     cell9.SetCellValue(list[i].MemMoney);
41
42                     ICell cell10 = row.CreateCell(8, CellType.Numeric);
43                     cell10.SetCellValue(list[i].DelFlag);
44
45                     ICell cell11 = row.CreateCell(9, CellType.String);
46                     cell11.SetCellValue(list[i].SubTime.ToShortDateString());
47
48                     ICell cell12 = row.CreateCell(10, CellType.Numeric);
49                     cell12.SetCellValue(list[i].MemIntegral);
50
51                     ICell cell13 = row.CreateCell(11, CellType.String);
52                     cell13.SetCellValue(list[i].MemEndTime.ToShortDateString());
53
54                     ICell cell14 = row.CreateCell(12, CellType.String);
55                     cell14.SetCellValue(list[i].MemBirthday.ToShortDateString());
56                 }
57                 work.Write(fs);  //最后把表写入IO流中
58
59             }
60
61         }

下面是从excel中导入数据库

 1  public void ReadExcel(string path)
 2         {
 3             using (Stream fs = new FileStream(path,FileMode.Open,FileAccess.Read))  //从指定路径读入excel表
 4             {
 5                 List<MemberInfo> list = new List<MemberInfo>();
 6             //工作表
 7                 IWorkbook workbook = WorkbookFactory.Create(fs);
 8                 //获取页
 9                 ISheet sheet = workbook.GetSheetAt(0);
10                 //遍历行
11                 for (int i = 0; i <=sheet.LastRowNum; i++)
12                 {
13                     MemberInfo mem = new MemberInfo();
14                    //获取行
15                     IRow row = sheet.GetRow(i);
16
17                     mem.MemName = row.GetCell(0).StringCellValue;
18                     mem.MemMobilePhone = row.GetCell(1).StringCellValue;
19                     mem.MemAddress = row.GetCell(2).StringCellValue;
20                     mem.MemType = Convert.ToInt32(row.GetCell(3).NumericCellValue);
21                     mem.MemNum = row.GetCell(4).StringCellValue;
22                     mem.MemGender = row.GetCell(5).StringCellValue;
23                     mem.MemDiscount = Convert.ToDouble(row.GetCell(6).NumericCellValue);
24                     mem.MemMoney = row.GetCell(7).NumericCellValue;
25                     mem.DelFlag = Convert.ToInt32(row.GetCell(8).NumericCellValue);
26
27                     mem.SubTime =Convert.ToDateTime(row.GetCell(9).StringCellValue);
28                     mem.MemIntegral = Convert.ToInt32(row.GetCell(10).NumericCellValue);
29                     mem.MemEndTime = Convert.ToDateTime(row.GetCell(11).StringCellValue);
30                     mem.MemBirthday = Convert.ToDateTime(row.GetCell(12).StringCellValue);
31                     list.Add(mem);
32                 }
33                 memDal.AddMemberInfo(list);  //把数据体添加到数据库
34             }
35
36
37         }

转载于:https://www.cnblogs.com/ZX-LMY/p/5828679.html

NPOI从数据库中导出数据到Excel相关推荐

  1. QTP从数据库中导出数据

    QTP从数据库中导出数据到excel中 Set objExcel = createobject("Excel.Application")xlsUrl = "C:\aa.x ...

  2. 如何在 Vue 中导出数据至 Excel 表格 - 卡拉云

    本文首发:<如何在 Vue 中导出数据至 Excel 表格 - 卡拉云> 我们经常需要在 Vue 搭建的后台管理系统里导出数据到 Excel / CSV ,方便我们将数据共享给其他同学或在 ...

  3. 从oracle9i/92数据库中导出数据至 oracle 8.1.7 数据库中

    根据ORACLE官方文档的说明,一旦数据库创建后,数据库的字符集是不能改变的.因此,提前考虑自己的数据库将选用哪一种字符集 是十分重要的.数据库字符集选择的一般规则是将数据库字符集设定为操作系统本地字 ...

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

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

  5. 从MySql 数据库中导出数据并生成指定格式xml文件

    最近网站需要做数据迁移,需要我将网站的数据从mysql数据库中导出,并按照要求生成指定格式的xml文件. xml格式要求: 代码: package com.epsoft.gjjisp;import j ...

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

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

  7. C#Web项目中导出数据为Excel

    导出数据为html中表格的形式注入. public static string ExportExcelByAbs(DataTable DetailDT, string[,] ht, string su ...

  8. java datagrid导出excel_从datagridview中导出数据到excel

    第一种办法:直接在button的Click事件中写代码进行导出:private void button6_Click(object sender, EventArgs e) { SaveFileDia ...

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

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

最新文章

  1. linux下安装配置laravel环境
  2. 探寻新的治疗方法,研究人员用VR可视化DNA结构
  3. 定义EditPlus 语法文件详解
  4. 使用 Arthas 排查 SpringBoot 诡异耗时的 Bug
  5. POJ - 1026 Cipher(置换群的幂)
  6. libcurl实现解析(3) - libcurl对select的使用
  7. 基于相关性分析系统性能瓶颈
  8. 学校计算机教室的用途,录播教室有什么功能,又有哪些用途
  9. 微软提出第一个端到端的Video Captioning方法:SWIN BERT,涨点显著!
  10. HDOJ-2091 空心三角形 C语言
  11. PDF在文字方面的一个缺陷
  12. 永中office属于职称计算机吗,职称计算机考核永中OFFICE辅导之电子表格.doc
  13. The Algorithms
  14. 主成分分析(PCA)详解
  15. PHP从入门到接到外包合同,再到放弃
  16. [编程神域 C语言浮游塔 第①期] Hello C language world
  17. python爬虫——实战篇
  18. 一起学Python吧~re正则+MySQL
  19. /usr/bin/ld: cannot find -lxxx 问题 解决方法总结
  20. 阿里移动安全陈树华:安全的最高境界是无感知

热门文章

  1. 转:关于Apache与Nginx的优势比较(经典)
  2. 交叉编译和使用HTOP
  3. 推荐一款好用的jquery弹出层插件——wbox
  4. Ubuntu12.04下apache服务器的安装也配置
  5. Typed DataSet的批量操作优化
  6. html导出表格为csv,可将HTML表格导出为Excel|csv|txt文件的jQuery插件
  7. 该设备或资源(Web 代理)未设置为接受端口1080上的连接
  8. C语言之运算符优先级(四十二)
  9. pthread_create()在C和C++使用区别
  10. Linux串口工具ckermit打印 android log