使用NPOI方法导出数据到excel表中

使用NPOI方法导出到excel可以大量提高导出速度!步骤如下:

(1)使用NPOI首先要有NPOI开发包(网上直接搜资源有的)

(2)解压后把下边两个文件拷贝到自己的项目下(在bin目录下 .net4.0 下的 NPOI.dll和NPOI.xml)

我的项目结构大致如下 使用的是DAL结构 我把NPOI工具集放到了UI层

(3)添加引用(以我的项目为例:在我项目的UI点击引用--游览--然后找到刚才拷贝的两个文件 即可)

(4)编写代码:

我的是一个点击事件 “导出”

前提条件就不说了 关键技术在下边代码展示出来了,别忘了 解析!

 private void btnExportToExcel_Click(object sender, RoutedEventArgs e)
        {
            SaveFileDialog sdfExport = new SaveFileDialog();
            sdfExport.Filter = "Excel文件|*.xls";
            if (sdfExport.ShowDialog() != true)
            {
                return;
            }
            string filename = sdfExport.FileName;
            HSSFWorkbook workbook = new HSSFWorkbook();
            ISheet sheet = workbook.CreateSheet("员工数据");

            IRow rowHeader = sheet.CreateRow(0);//表头行
            rowHeader.CreateCell(0, CellType.STRING).SetCellValue("姓名");
            rowHeader.CreateCell(1, CellType.STRING).SetCellValue("工号");
            rowHeader.CreateCell(2, CellType.STRING).SetCellValue("日期");

            //把查询结果导出到Excel
            Employee[] employees = (Employee[])datagrid.ItemsSource; //数据源 这里是DataGrid里边的 使用绑定技术实现的
            for (int i = 0; i < employees.Length; i++)
            {
                Employee employee = employees[i];
                IRow row = sheet.CreateRow(i + 1);
                row.CreateCell(0, CellType.STRING).SetCellValue(employee.Name);
                row.CreateCell(1, CellType.STRING).SetCellValue(employee.Number);
<span style="white-space:pre">		</span>//单独处理日期格式
                ICellStyle styledate = workbook.CreateCellStyle();
                IDataFormat format = workbook.CreateDataFormat();
                //格式具体有哪些请看单元格右键中的格式,有说明
                styledate.DataFormat = format.GetFormat("yyyy\"年\"m\"月\"d\"日\"");

                ICell cellInDate = row.CreateCell(2, CellType.NUMERIC);
                cellInDate.CellStyle = styledate;
                cellInDate.SetCellValue(employee.InDate);
            }
<span style="white-space:pre">	</span>    //写入到流中
            using (Stream stream = File.OpenWrite(filename))
            {
                workbook.Write(stream);
            }
        }

ok!我这里试一下 可以完美运行! 祝你好运1

时间: 2024-10-01 12:02:39

使用NPOI方法导出数据到excel表中的相关文章

asp.net使用MVC4框架基于NPOI做导出数据到Excel表

NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写.NPOI是构建在POI 3.x版本之上的,它可以在没有安装Office的情况下对Word/Excel文档进行读写操作.使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写.NPOI是构建在POI 3.x版本

利用数据库管理工具(Navicat)导出数据到Excel表中

如果只是想把数据库表中数据简单导出来,可以利用数据库管理工具中的工具 1.先查询 2.在查询出结果中全选 3.导出向导 4.选择Excel 5.选择导出地址并命名 原文地址:https://www.cnblogs.com/sanhao/p/9789232.html

mysql导出数据到excel表中

mysql>  select b.username,a.subject,a.money,FROM_UNIXTIME(a.ctime) from dlyun_ad_shop_pay a   INNER JOIN dlyun_common_member b  on a.uid=b.uid where a.ctime>='1429428970' and a.ctime<='1429689355' and a.`status` = 2  into outfile '/tmp/test.xls';

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

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

C# 导出数据到Excel模板中(转)

今天做报表的时候遇到了多表头的问题,而且相应的报表的格式都一样.所以就采用了报表模板的方式来进行. 第一步:在开发的当前项目中引入:Microsoft.Office.Interop.Excel:System.Reflection:命名空间. 第二步:获取要导出的数据: 第三步:创建一个Excel 应用程序: //需要添加 Microsoft.Office.Interop.Excel引用 Microsoft.Office.Interop.Excel.Application app = new Mi

C#中联查的简单方法(如从数据库中获取到数据放到excel表中)

var path = new FileStream((Server.MapPath("~") + "Content\\data\\Cause\\事业单位管理人员基本情况.xls"), FileMode.Open, FileAccess.Read); var wb = new HSSFWorkbook(path); var shet = wb.GetSheet("page 1"); var chain = shet.Chain("D7&q

pl/sql developer导出数据到excel的方法

http://yedward.net/?id=92 问题说明:使用pl/sql developer导出数据到excel表格中是非常有必要的,一般的可能直接在导出的时候选择csv格式即可,因为该格式可以直接用excel打开.但是,在导出的时候出现了这样的问题,导出成csv格式的时候出现了数据乱码,而导出为xml或者html的时候却不会出现问题. 图1:pl/sql developer导出为csv出现乱码 问题解析:出现上面的问题,可能是字符集的设置问题.我找到了一些其他的数据导出方法,下面一一列出

数据导入到excel表中

一.首先导入jar包:下载地址:http://download.csdn.net/detail/u011159417/9700784二.建立一个person类,(例如IP表)三.实现导出数据到excel表一共分为六步: 1.创建一个workbook对象,对应一个excel文件:HSSFWorkbook wb = new HSSFWorkbook(); 2.在workbook中,添加一个sheet:HSSFSheet sheet = wb.createSheet("sheet_test"

Android 添加数据到本地Excel表中

由于项目需要,今天学习了一下如何将程序里的数据添加到本地的Excel表中. 下面为学习笔记: 先上效果图: 首先,需要导入jxl.jar包到libs文件夹内. 然后创建Excel表,并往表里添加表头. // 创建excel表. public void createExcel(File file) { WritableSheet ws = null; try { if (!file.exists()) { // 创建表 wwb = Workbook.createWorkbook(file); //