爱易网
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 浏览次数:20475 次
/// <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数据库操作
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
怎么后台设置客户端文本框为只读属性
[郁闷] 今天套一个网站,竟然用了四个小时,老了不中用了,唉!该如何处理
s3 prosavage km 133,该怎么解决
asp.net 与javascript 相互操作的有关问题,
关于MVC调用KindEditor控件,无法插入数据库有关问题
回答有关问题就得分!
母板页 内容页 css 的有关问题
怎么隐藏.aspx或.html扩展名
无法识别的属性“xmlns”。请注意属性名称区分大小写,该如何处理
推荐阅读
更多>
C#慢慢学 (一)(e文转)
控制gridview的列宽,
哪位高手能给小弟我看看有什么有关问题
亲密接触ASP.Net(1)
ASP.NET虚拟主机的重大安全隐患(2.3)_Asp.Net安全和加密
用户控件有关问题,在先等,哥哥姐姐们帮忙
怎么知道小弟我请求的页面是否存在
ISAPI扩展 和 ISAPI筛选器 各是什么意思,它们的区别是什么?解决方法
一个关于XMLHttprequest异步有关问题
window.open后ifame有关问题!
js如何取出数组中的最大值
关于类库存引用有关问题
小弟我在VS2005(C#)下从GridView 导出到EXCEL,有个牛B的有关问题啊怎么处理
反射取值有关问题,求指点
小弟我看到这个例子设置的是文字循环从右到左移动,有没有循环改变,就是左右右左那样
在asp.net中SqlCommand查询数据库解决办法
100分请问怎么让GridView默认显示的就是编辑状态
去掉DataSet中的重复字段,该如何处理
问个小疑点
.NET里头那些对数据库的操作返回DataTable