爱易网
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 浏览次数:20684 次
/// <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.net拖入一个控件为什么总是固定在左上角,不能像winform里随意拖动布局?解决办法
比较空!想自己做个网站!做什么样子的站好啊解决方法
怎么将数据库的两个字段绑定到Dropdownlist
文字文件转化为图片文件的简易方法
IList<string>的计算解决方法
网站的推广之痛-使用AJAX和.NET网站的朋友注意了
100分,问一个简单的有关问题,ASP或者.NET怎么解决下面的情况?
怎么实现导航栏的功能
请问C#中调用DLL的一个有关问题
推荐阅读
更多>
应用程序中的服务器异常 怎么解决
用正则式过滤 图片内容,在线给分。解决方案
异常提示是什么意思
怎么提取GridView第一行的DataKeyNames属性值-
100分,免费分享My97日期控件(My97DatePicker)Ver2.1(新增日期范围限制,增强自动纠错功能,附详细演示和.NET例子),好东西一起顶上去大家分,该怎么解决
ASP.NET三层构架的有关问题
如何安装SQL server2008
脚本更新textbox,发现它不再保持状态,有办法吗,该如何解决
ASP.NET2.0应用中定制安全凭证之理论篇
关于连接数据库有关问题,应该很简单,帮帮忙
紧急有关问题,求救。顶者有分!
多条件复合查询解决办法
哪位高手有Jquery折叠展开的效果
当鼠标移动到gridview一行的时候,提示该行的主键信息,请教怎么实现啊
若利用iframe,treeview中点击节点时怎么显示其相关节点信息在textbox中
IIS 佯死。运行一段时间就假死了,必须要重启服务器才行。重启IIS都没用?
正则表达式解析html中的href标记的所有格式 急该如何解决
关于MVC路由URL的批改,速结帖
javascript ,net解决办法
请教使用三层结构中,Model实体类是用来做什么的,使用实体类有什么好处呢