爱易网
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 浏览次数:20695 次
/// <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数据库操作
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
紧急的SQL有关问题
急gridview添RadioButton
怎么能知道指定Session用户当前是否在线
.net2005有关问题求教,一有正确答案立刻结贴,顶者有分
有关DataTable的性能有关问题
实现Prototype设计模式_Asp.NET开发实例
!gridview打印,怎么实现,并且把分页没有显示的内容一同打印出来!
求plsql语句,该如何处理
VS.NET编辑异常后,无法定位异常的文件及行和列?
推荐阅读
更多>
很菜很基础的有关问题
在现有的CommandField上怎么实现删除确认(不要转化为模板列)
怎么才能向DropDownList的文本窗口中输入文字,就像文本框一样可以输入文字
winform调用存储过程异常
ASP.NET中树形图的实现
关于FCKediter的配置有关问题
window.open 打开新页面有关问题,不想被ie的中级设置拦截
孟子前辈,高手们近来看看JS调用DATALIST里面DIV的有关问题
你喜欢在哪里定义字符串常量,怎么用方便些
叩开C#之门系列之C#与面向对象编程语言
急等。使用FileUpload控件上传文件,文件大小是不是有限制啊解决办法
新人对微软提供的服务器控件的困惑
C#事件机制学习
急放弃使用Ajax后页面间调用怎么获取返回值
关于部署webservice的有关问题(急)
ASP.NET AJAX onmouseover 事件,该如何处理
document属性,该怎么解决
ADO.NET访问数据库的步骤
续实例解析SOCKET编程模型之异步通信篇(下)
100分有关问题的解决思路,高手近来看看