爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
ASP.NET教程
怎么由DataSet将数据导入Excel?_Asp.NET数据库操作
怎么由DataSet将数据导入Excel?_Asp.NET数据库操作
日期:2009-10-11 浏览次数:20749 次
/// <summary>
/// 将DataSet里所有数据导入Excel.
/// 需要添加COM: Microsoft Excel Object Library.
/// using Excel;
/// </summary>
/// <param name="filePath"></param>
/// <param name="ds"></param>
public static void ExportToExcel(string filePath, DataSet ds)
{
object oMissing = System.Reflection.Missing.Value;
Excel.ApplicationClass xlApp = new Excel.ApplicationClass();
try
{
// 打开Excel文件。以下为office 2000.
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(filePath, oMissing, oMissing, oMissing, oMissing, oMissing,
oMissing, oMissing, oMissing, oMissing, oMissing, oMissing,
oMissing);
Excel.Worksheet xlWorksheet;
// 循环所有DataTable
for( int i=0; i<ds.Tables.Count; i++ )
{
// 添加入一个新的Sheet页。
xlWorksheet = (Excel.Worksheet)xlWorkbook.Worksheets.Add(oMissing,oMissing,1,oMissing);
// 以TableName作为新加的Sheet页名。
xlWorksheet.Name = ds.Tables[i].TableName;
// 取出这个DataTable中的所有值,暂存于stringBuffer中。
string stringBuffer = "";
for( int j=0; j<ds.Tables[i].Rows.Count; j++ )
{
for( int k=0; k<ds.Tables[i].Columns.Count; k++ )
{
stringBuffer += ds.Tables[i].Rows[j][k].ToString();
if( k < ds.Tables[i].Columns.Count - 1 )
stringBuffer += "\t";
}
stringBuffer += "\n";
}
// 利用系统剪切板
System.Windows.Forms.Clipboard.SetDataObject("");
// 将stringBuffer放入剪切板。
System.Windows.Forms.Clipboard.SetDataObject(stringBuffer);
// 选中这个sheet页中的第一个单元格
((Excel.Range)xlWorksheet.Cells[1,1]).Select();
// 粘贴!
xlWorksheet.Paste(oMissing,oMissing);
// 清空系统剪切板。
System.Windows.Forms.Clipboard.SetDataObject("");
}
// 保存并关闭这个工作簿。
xlWorkbook.Close( Excel.XlSaveAction.xlSaveChanges, oMissing, oMissing );
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkbook);
xlWorkbook = null;
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
// 释放...
xlApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
xlApp = null;
GC.Collect();
}
}
上一篇:[环境搭建] VS-Visual Studio-IIS Express 支持局域网访问 远程调试
下一篇:初探ERP的数据库框架_Asp.NET数据库操作
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
ASP页面可以指定最小宽度吗?如果不行,有什么替代方法吗?解决思路
本机调试很好的程序.放在服务器上有有关问题了.可能是什么毛病
"正则表达式"
实现一个客户端的DataSet-----ClientDataSetDataProvider.asmx.cs(2)
用户控件向Page如何传递参数
运用VS2010在本地IIS上发布网站,数据库连接出错,求教!
未能加载文件或程序集AjaxControlToolkit 3.5的有关问题
关于页面,大伙儿帮忙想一个办法,思路在此
使用DirectoryEntry进行 IIS 操作
推荐阅读
更多>
求b/s、c/s混搭的聊天软件原理解决思路
jquery新手,求指导。该怎么处理
请教大家,怎么在asp.net中用c#调用excel中的vba 多谢先
Asp.net关于Header/title/Meta tages/Style操作的小技巧
为什么小弟我的参数不能保持
为啥获得的IP是 :1 ?该怎么处理
运用新浪登录(401)未经授权。
SQL简单有关问题
"未将对象引用设置到对象的实例"到底是什么原因造成的呢?解决思路
【原创】windows7+vs2012 如何安装windows服务
具有自动完成功能的ComboBox
小弟我的jQueryMobile Demo不自动适应手机屏幕宽度
急问一个Session的有关问题
请问一个关于事件响应的有关问题
|M| 求WinFrom程序的大局按键的程序设计思相和实现
VB.NET实现五子棋的人工智能(1)
新手在线!关于json
主从表中怎样控制从表只显示前5记录(在线)解决方法
什么是实例化 什么又是继承 ?一样么?解决方法
求 .Net软件工程师web开发学习方法和书籍推荐