爱易网
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 浏览次数:20660 次
/// <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数据库操作
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
恼人的有关问题,头疼很久了!各位帮个忙
2007再问.net 1.1和.net 2.0哪位高手更成熟
asp.net动态生成控件有关问题
怎么在服务器上创建文件夹
RegularExpressionValidator的正则表达式,该怎么解决
文件上传重命名有关问题.
做搜索时遇到的有关问题 多字段多条件查询
100 求ASP.NET服务器的有关问题
浅解多线程(二)之和尚们的那些事儿
推荐阅读
更多>
帮小弟我看看这里面的onclick 点了没反应
求教:想用JS实现一个简单的复选框全选效果,为何实现不了?解决方案
【F#2.0系列】使用F#进行算术操作
asp.net 获取返回的xml数据中的值解决方法
技术——怎么通过js调用客户端WinForms应用程序
自动下载文件到本地电脑的有关问题
把一个网页运用 Email发送
Paging Database Results in ASP.NET (Prt1)(转载:http://www.4guysfromrolla.com/)[登级:初级]-.NET教_数据库应用
asp.net后台管理界面有关问题
求一上新的思路或解决方案!
vs2005向ACCESS插入数据操作(桌面程序)?解决方案
关于FormsAuthentication(窗体身份验证机制)的有关问题,求教大家,
Asp.net 后台DIV解决方法
怎么在后台(C#)获取select 的值
treeview 和 iframe 有关问题
sql2000:没法将类型“System.DateTime?”隐式转换为“System.DateTime”
如何循环这样的数据 用repeater
ASP,NET 的Datagrid 能有VB.net那样功能可以复制数据到EXCL那样整齐解决思路
.NET中怎么才能用VB里的vbERROR,vbMsgBoxResult?高手赐教!
求組ASP.NET(VB) 构架網頁傳值問題