首先要添加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. Python中几种数据结构的整理,列表、字典、元组、集合

    列表:shoplist = ['apple', 'mango', 'carrot', 'banana']字典:di = {'a':123,'b':'something'}集合:jihe = {'app ...

  2. python中对文件、文件夹的操作需要涉及到os模块和shutil模块。

    创建文件:1) os.mknod("test.txt") 创建空文件2) open("test.txt",w) 直接打开一个文件,如果文件不存在则创建文件 创建 ...

  3. 牢记负载均衡与HA,高性能是不同的方案。一般的CLUSTER只能实现其中的一种,而ORACLE的RAC可以有两种。

    F5/LVS<—Haproxy<—Squid/Varnish<—AppServer. 现在网站发展的趋势对网络负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术: 第一 ...

  4. AOP举例子

    切面类TestAspect package com.spring.aop; /** * 切面 * */ public class TestAspect { public void doAfter(Jo ...

  5. 连接各种数据库神器———DbVisualizer

    作为开发人员,经常会遇到在不同的数据库环境中进行开发或者调试,所以针对每种数据库都要安装对应的客户端,不但要占用硬盘控件而且还要经常切换,无可厚非这是一项头疼并且麻烦的事情.有了DbVisualize ...

  6. 14.5.2.2 autocommit, Commit, and Rollback

    14.5.2.2 autocommit, Commit, and Rollback 在InnoDB,所有的用户活动发生在一个事务里, 如果自动提交模式是启用的, 每个SQL语句形成一个单独的事务.默认 ...

  7. 【POJ】1035 Spell checker

    字典树. #include <iostream> #include <cstdio> #include <cstring> #include <cstdlib ...

  8. Linux Shell编程(6)——变量替换

    变量的名字是它的值保存的地方.引用它的值称为变量替换.$让我们仔细地区别变量和变量的值.如果variable1是一个变量的名字,那么$variable1就是引用这个变量的值――即这个变量它包含的数据. ...

  9. 去掉cell边框的简单办法

    实很简单,把backgroundView设置为一个空的View,然后就干净了 UIView *tempView = [[UIView alloc] init]; [cell setBackground ...

  10. 嵌入式ARM-Linux开发工具下载地址合集

    insight gdb  http://ftp.twaren.net/Unix/Sourceware/ 说明:GDB可视化调试工具 http://gro.clinux.org/frs/?group_i ...