C# 将dataset数据导出到excel中
//添加引用 NPOI.dll
//添加 using NPOI.HSSF.UserModel;
/// <summary>
/// 导出数据到Excel
/// </summary>
/// <param name="returnMsg"></param>
/// <returns></returns>
public bool ExportOrderToExcel(ref string returnMsg)
{
try
{
DataSet dt = "SQL语句返回dataset数据集";
int rowIndexS = 0; //表格总行
if(dt!=null && dt.Tables.Count > 0 && dt.Tables[0].Rows.Count > 0)
{
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet1 = (HSSFSheet)workbook.CreateSheet("工作簿名称");
HSSFRow headerRow1 = (HSSFRow)sheet1.CreateRow(0);
HeadControl(headerRow1); //行名称
foreach (DataRow dr in dt.Tables[0].Rows)
{
rowIndexS++;
HSSFRow dataRow = (HSSFRow)sheet1.CreateRow(rowIndexS);
OrderFill(dataRow, dr); //填充数据
}
//保存
string path = "/FileRoot/temp/";//文件保存路径
string fileName = DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xls"; //文件名已时间命名
path += fileName;
System.IO.FileStream file = new System.IO.FileStream(HttpContext.Current.Server.MapPath(path), System.IO.FileMode.Create);
workbook.Write(file);
//关闭文件,释放对象
file.Close();
workbook = null;
returnMsg =path;//返回文件路径
return true;
}
else
{
returnMsg = "没有查到要导出的数据!";
return false;
}
}
catch (Exception)
{
returnMsg = "导出数据失败!";
return false;
}
}
/// <summary>
/// 填充报表数据
/// </summary>
/// <param name="dataRow"></param>
/// <param name="dr"></param>
public void OrderFill(HSSFRow dataRow, DataRow dr)
{
dataRow.CreateCell(0).SetCellValue(dr["字段名"].ToString());
dataRow.CreateCell(1).SetCellValue(dr["字段名"].ToString());
dataRow.CreateCell(2).SetCellValue(dr["字段名"].ToString());
dataRow.CreateCell(3).SetCellValue(dr["字段名"].ToString());
dataRow.CreateCell(4).SetCellValue(dr["字段名"].ToString());
dataRow.CreateCell(5).SetCellValue(dr["字段名"].ToString());
}
/// <summary>
/// 导出已支付订单的表头
/// </summary>
/// <param name="headerRow"></param>
public void HeadControl(HSSFRow headerRow)
{
headerRow.CreateCell(0).SetCellValue("列名");
headerRow.CreateCell(1).SetCellValue("列名");
headerRow.CreateCell(2).SetCellValue("列名");
headerRow.CreateCell(3).SetCellValue("列名");
headerRow.CreateCell(4).SetCellValue("列名");
headerRow.CreateCell(5).SetCellValue("列名");
}
附件:NOPI.DLL下载链接 http://files.cnblogs.com/a-mumu/NPOI.zip
C# 将dataset数据导出到excel中的更多相关文章
- asp.net DataSet数据导出到Excel中
方法: [STAThread]///这是必须的 public override void VerifyRenderingInServerForm(System.Web.UI.Control co ...
- 将Datagridview中的数据导出至Excel中
首先添加一个模块ImportToExcel,并添加引用 然后导入命名空间: Imports Microsoft.Office.Interop Imports System.Da ...
- 如何将存储在MongoDB数据库中的数据导出到Excel中?
将MongoDB数据库中的数据导出到Excel中,只需以下几个步骤: (1)首先,打开MongoDB安装目录下的bin文件夹,(C:\Program Files (x86)\MongoDB\Serve ...
- 使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.最详细!!!
一.需求 我们会遇到开发任务: 经理:小王,你来做一下把数据库里的数据导出到Excel中,一个表是一个sheet,不要一个表一个Excel. 小王:好的,经理.(内心一脸懵逼) 二.前期准备 首先我们 ...
- 将datagrid中数据导出到excel中 -------<<工作日志2014-6-6>>
前台datagrid数据绑定 #region 导出到excel中 /// <summary> /// 2014-6-6 /// </summary> / ...
- Magic xpa 3.x很容易将数据导出到Excel中
Magic xpa 3.x很方便的将表中数据导出到Excel文件中,还可以自动将表中数据生成各种图表. 通过使用自带的打印数据内部事即可实现. 1.首先将打印数据任务属性设置为“是”. 2.可使用主程 ...
- 数据导出到Excel中
自己修改后的一个数据导出到Excel的方法,粘出来与大家共享. 只需要将 System.Web.HttpContext.Current.Response.Charset = ...
- dataset数据导出到Excel
1.将数据写入HTTP输出流/这样子导出以后的数据全在一行中 public void CreateExcel(DataSet ds, string FileName) { HttpResponse r ...
- DataSet数据导出为Excel文档(每个DataTable为一个Sheet)
Web项目中,很多时候须要实现将查询的数据集导出为Excel文档的功能,很多时候不希望在工程中添加对Office组件相关的DLL的引用,甚至有时候受到Office不同版本的影响,导致在不同的服务器上部 ...
随机推荐
- [Binder深入学习二]Binder驱动——基础数据结构二
Userspace和KernelSpace进行交互时,大部分命令是通过 ioctl 实现的,在这个过程中,最重要的一个便是 BINDER_WRITE_READ 命令了. #define BINDER_ ...
- Oracle学习(七)游标
一.简介 定义 实质上是数据集,类似数组一样,把查询的数据集存储在内存当中. 使用时可以通过游标指向其中一条记录,也可以通过循环游标达到循环数据集的目的. 游标的种类 显式游标: 使用之前必须得先声明 ...
- 手把手教你在容器服务 TKE 上使用 LB 直通 Pod
什么是 LB 直通 Pod ? Kubernetes 官方提供了 NodePort 类型的 Service,即给所有节点开一个相同端口用于暴露这个 Service,大多云上 LoadBalancer ...
- Android小部件Widget开发过程中的坑和总结
@ 目录 概述 官方参考 效果图 AndroidManifest.xml Receiver Service Options res/xml/ widget_desktop_options.xml 常用 ...
- Prime Path(POJ - 3126)【BFS+筛素数】
Prime Path(POJ - 3126) 题目链接 算法 BFS+筛素数打表 1.题目主要就是给定你两个四位数的质数a,b,让你计算从a变到b共最小需要多少步.要求每次只能变1位,并且变1位后仍然 ...
- 日志分析平台ELK之日志收集器logstash常用插件配置
前文我们了解了logstash的工作流程以及基本的收集日志相关配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13761906.html:今天我们来了解下l ...
- 【漏洞复现】S2-052 (CVE-2017-9805)
一.漏洞描述 Struts2 的REST插件,如果带有XStream组件,那么在进行反序列化XML请求时,存在未对数据内容进行有效验证的安全隐患,可能发生远程命令执行. 二.受影响版本 Struts2 ...
- 【题解】[LNOI2014]LCA
题目戳我 \(\text{Solution:}\) 这题的转化思想很巧妙-- 考虑把\(dep\)给拆掉. 首先可以明确的是,每一个\(LCA\)一定在\(root\to z\)的路径上. 考虑一个\ ...
- JVM 第三篇:Java 类加载机制
本文内容过于硬核,建议有 Java 相关经验人士阅读. 1. 什么是类的加载? 类的加载指的是将类的 .class 文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个 ...
- 配置DVWA漏洞环境
web萌新,因为在别人的环境上练习总有点不舒服,所以在本地搭建了网站:下面记录一下搭建的步骤 DVWA:是一个漏洞环境包,可以用phpstudy或者wamp解析:所以要想配置这个环境,就必须有这两个软 ...