[转载]DataSet导入到Excel文件
/// <summary>
/// 将数据导入到Excel
/// </summary>
/// <param name="ds">
/// 需要生成Excel的数据源
/// DataSet->DataTable->TableName为页(Sheet)名字
/// DataTable->Column->ColumnName为列名
/// </param>
/// <param name="strFilenamePath">生成后文件保存的全路径</param>
/// <returns></returns>
public bool ImportToExcel(DataSet ds, string strFilenamePath)
{
if (ds.Tables.Count == 0)
return false;
try
{
Microsoft.Office.Interop.Excel.ApplicationClass objApp = new Microsoft.Office.Interop.Excel.ApplicationClass();
Microsoft.Office.Interop.Excel._Workbook objWorkbook;//工作薄
Microsoft.Office.Interop.Excel._Worksheet objWorksheet;//工作页
objWorkbook = objApp.Workbooks.Add(true);
object objMissing = System.Reflection.Missing.Value;
#region 添加数据
for (int i = 0; i < ds.Tables.Count; i++)
{
objWorksheet = (Microsoft.Office.Interop.Excel._Worksheet)objWorkbook.ActiveSheet;
//书签名字为表名
objWorksheet.Name = ds.Tables[i].TableName;
//第一行显示表的列名
for (int j = 0; j < ds.Tables[i].Columns.Count; j++)
{
objApp.Cells[1, j + 1] = ds.Tables[i].Columns[j].ColumnName;
}
//正文内容,从第二行开始
for (int rows = 0; rows < ds.Tables[i].Rows.Count; rows++)
{
for (int cols = 0; cols < ds.Tables[i].Columns.Count; cols++)
{
objApp.Cells[rows + 2, cols + 1] = ds.Tables[i].Rows[rows][cols].ToString();
}
}
if (i < ds.Tables.Count - 1)
{
objApp.Sheets.Add(objMissing, objMissing, 1, Microsoft.Office.Interop.Excel.XlSheetType.xlWorksheet);
}
}
#endregion
objApp.Visible = true;
//将Excel保存到指定路径
objWorkbook.SaveAs(
strFilenamePath, objMissing, objMissing, objMissing, objMissing,
objMissing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, objMissing,
objMissing, objMissing, objMissing, objMissing);
objApp.Quit();
return true;
}
catch (Exception ex)
{
string strEXMessage = ex.Message;
return false;
}
}
[转载]DataSet导入到Excel文件的更多相关文章
- 导入导出Excel文件
搭建环境 先新建web project ,然后Add Struts Capabilties: 下载导入导出Excel所需的jar包: poi-3.8-20120326.jar包 : http:// ...
- 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转
效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载]) 本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较 ...
- 【转】 (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- (C#)利用Aspose.Cells组件导入导出excel文件
Aspose.Cells组件可以不依赖excel来导入导出excel文件: 导入: public static System.Data.DataTable ReadExcel(String strFi ...
- ASP.NET Core导入导出Excel文件
ASP.NET Core导入导出Excel文件 希望在ASP.NET Core中导入导出Excel文件,在网上搜了一遍,基本都是使用EPPlus插件,EPPlus挺好用,但商用需要授权,各位码友若有好 ...
- C#将数据导入到excel文件
最近在做C#对excel的操作程序,简单的与datagridview的交互如下 using System;using System.Collections.Generic;using System.C ...
- java中使用poi导入导出excel文件_并自定义日期格式
Apache POI项目的使命是创造和保持java API操纵各种文件格式基于Office Open XML标准(OOXML)和微软的OLE复合文档格式(OLE2)2.总之,你可以读写Excel文件使 ...
- 在ASP.NET Core中使用EPPlus导入出Excel文件
这篇文章说明了如何使用EPPlus在ASP.NET Core中导入和导出.xls/.xlsx文件(Excel).在考虑使用.NET处理excel时,我们总是寻找第三方库或组件.使用Open Offic ...
- java导入导出Excel文件
package poi.excel; import java.io.IOException; import java.io.InputStream; import java.io.OutputStre ...
随机推荐
- iOS - Swift SingleClass 单例类
前言 单例对象能够被整个程序所操作.对于一个单例类,无论初始化单例对象多少次,也只能有一个单例对象存在,并且该对象是全局的,能够被整个系统访问到. 单例类的创建 1.1 单例类的创建 1 单例类的创建 ...
- 06 SQL执行计划
解释计划 与 执行计划的 区别 随着可以得到解释计划输出的开发工具, 比如 toad 的普遍使用, 生成解释计划就变的相当简单. 而不简单的是得到执行计划. 解释计划 EXPLAIN PLAN 用来显 ...
- poj1329Circle Through Three Points(三角形外接圆)
链接 套模板 不知道有没有x,y=0情况,不过这种情况都按+号输出的. #include <iostream> #include<cstdio> #include<cst ...
- mysql 聚集函数需要注意的问题
1.当没有记录的时候,使用聚集函数,会导致出现一条记录,记录的取值都是NULL,如下:mysql> select name from student where name='David';Emp ...
- Linux小知识
1,ubuntu下,开机如何进行命令行? 图形模式下,首先进入终端: 1. 找到 /etc/default/grub文件: 2. 修改 GRUB_CMDLINE_LINUX_DEFAULT=" ...
- Could not obtain connection metadata
用hibernate连接数据库出现错误 2010-3-16 17:23:39, 093 [main] WARN [org.hibernate.cfg.SettingsFactory] - Could ...
- c++ char * const p问题
事实上这个概念谁都有,只是三种声明方式非常相似很容易记混. Bjarne在他的The C++ Programming Language里面给出过一个助记的方法: 把一个声明从右向左读. char * ...
- 转!!Java 基础面试题的剖析: short s1=1;s1 = s1 +1 报错? s1+=1 呢
short s1=1;s1 = s1 +1会报错吗? package common; public class ShortTypeTest { /* * @param args */ publi ...
- C++ 迭代器介绍 [转摘]
转摘地址为:http://blog.chinaunix.net/uid-20773165-id-1847758.html 迭代器 迭代器提供对一个容器中的对象的访问方法,并且定义了容器中对象的范围.迭 ...
- WAP调用微信支付https://pay.weixin.qq.com/wiki/doc/api/wap.php?chapter=15_1
公司做的一个购物网站 之前微信版的网站要搬在webView上 可是微信支付是个问题 , 在外部浏览器怎么都发不起微信请求 , 原因是因为页面调用的微信浏览器自带JSAPI 在外部浏览器无法调用,但 ...