NPOI从数据库中导出数据到Excel

首先要添加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         }
时间: 2024-08-26 11:17:40

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

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

因为有个日常提数,工作日每天都要从数据库中提取数据,转换为excel,再以邮件的形式发给用户. 刚好近期同事在研究使用kettle自动提数且完成邮件的发送,觉得很实用又挺有意思的就学了一下这个技能~ 首先我们需要新建 转换  转换: 可以将数据从数据库中提取到excel中  然后我们如果想要定时提取数据的话,可以新建 作业 作业: 可以定时执行转换任务,然后还可以将发送邮件耶~ (不过这个技能我还不是很熟悉,等我熟悉了再更新嘻嘻) 一 . 新建转换 1.点击 + 号 ,也就是新建 ,然后选择 转

C#中导出数据到Excel表格中

之前PM交给我一个自动化测试的Case,让我抓取页面上的数据到Excel表格中,刚好又接了一个之前人家做的系统, 刚好看到可以用NPOI导数据,就动手试试,成功导出. 由于鄙人比较菜,也比较懒, 怕自己忘记了,今天就总结一下,以防下次用可以参考. 1.要使用NPOI,首先需要在Project中Install NPOI的 Package. 右键点击Project------>Manage NuGet Packages---->Search NPOI----->点击搜索到的NPOI然后点击等

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

1,创建数据源 找到要导出的GridView中的数据. 2,重写VerifyRenderingInServerForm方法. public override void VerifyRenderingInServerForm(Control control) { } 3,编写导到Excel的方法. private void ExportGridView()        {            /**             * 如果打印全部数据,则加上注视的代码             * *

.Net中导出数据到Excel

一.asp.net中导出Excel的方法: 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出流写给浏览器.在Response输出时,t分隔的数据,导出Excel时,等价于分列,n等价于换行. 1.将整个html全部输出Excel 此法将html中所有的内容,如按钮,表格,图片等全部输出到Excel中. Response.Clear();        Response.Buffer=   true;

python从mysql导出数据导excel

# coding:utf8 import sys reload(sys) sys.setdefaultencoding('utf8') # author: 'zkx' # date: '2018/3/11' # Desc:从数据库中导出数据到excel数据表中 #已封装,可以直接使用,只需更改sql语句即可 import xlwt import MySQLdb def export(host,user,password,dbname,table_name,outputpath): conn =

java导出数据库里的数据至Excel进行数据备份

调用部分: package com.otdrmsys.action; import com.otdrmsys.util.ResultSetToExcel; public class ExcelExport { public static void main(String[] args) { // String fileName = "otdr";//文件名,不带路径,不带.xls后缀 // String [] coloumItems = {"otdr编号",&quo

利用Aspose.Cells完成easyUI中DataGrid数据的Excel导出功能

我准备在项目中实现该功能之前,google发现大部分代码都是利用一般处理程序 HttpHandler实现的服务器端数据的Excel导出,但是这样存在的问题是ashx读取的数据一般都是数据库中视图的数据,难免会含有方便操作的 主键ID这列的记录.现在项目需要在easyUI的DataGrid中显示的数据能全部导出Excel,包括DataGrid中的中文标题,其他的统统不 要. 完成该功能所需的工具和环境:Newtonsoft.Json序列化和反序列化类库.easyUI前端UI框架.HttpHandl

C#读取Excel表格数据到DataGridView中和导出DataGridView中的数据到Excel

其实想在datagridview中显示excel表格中的数据跟读取数据库中的数据没什么差别,只不过是创建数据库连接的时候连接字段稍有差别. private void btnShow_Click(object sender, EventArgs e) { OpenFileDialog fd = new OpenFileDialog();//首先根据打开文件对话框,选择excel表格 ofd.Filter = "表格|*.xls";//打开文件对话框筛选器 string strPath;/

NPOI导出数据到Excel

NPOI导出数据到Excel 前言 Asp.net操作Excel已经是老生长谈的事情了,可下面我说的这个NPOI操作Excel,应该是最好的方案了,没有之一,使用NPOI能够帮助开发者在没有安装微软Office的情况下读写Office 97-2003的文件,支持的文件格式包括xls, doc, ppt等.NPOI是构建在POI 3.x版本之上的,它可以在没有安装Office的情况下对Word/Excel文档进行读写操作. 方法 先去官网:http://npoi.codeplex.com/下载需要