已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
将数据库表导出到Excel,并生成文件(C#实现)关键词: C#, ASP.NET, Excel 需添加项目引用:1. .NET-System.Data.OracleClient.dll2. COM-Microsoft Excel 11.0 Object Library代码如下:using System;using System.IO;using System.Data;using System.Reflection;using System.Diagnostics;using System.Configuration;using System.Collections;using Excel;namespace ProtoType/ / 套用模板输出Excel,生成xls文件和html文件/ Author: Liu Wen/ Date Created: 2006-8/ public class ExportExcel#region variable memberprotected string templateFile = null;protected string excelFile = null;protected string htmlFile = null;protected object missing = Missing.Value;Excel.ApplicationClass app;Excel.Workbook book;Excel.Worksheet sheet;Excel.Range range;private DateTime beforeTime;/Excel启动之前时间private DateTime afterTime;/Excel启动之后时间#endregion/ / 构造函数,将一个已有Excel工作簿作为模板,并指定输出路径/ / Excel模板文件路径 / Excel输出文件路径 / Html输出文件路径 public ExportExcel(string templateFile, string excelFile, string htmlFile)if(templateFile = null)throw new Exception(Excel模板文件路径不能为空!);if(excelFile = null)throw new Exception(Excel输出文件路径不能为空!);if(htmlFile = null)throw new Exception(Html输出文件路径不能为空!);if(!File.Exists(templateFile)throw new Exception(指定路径的Excel模板文件不存在!);this.templateFile = templateFile;this.excelFile = excelFile;this.htmlFile = htmlFile;/创建一个Application对象beforeTime = DateTime.Now;app = new ApplicationClass();/app.Visible = true;afterTime = DateTime.Now;/打开模板文件,得到WorkBook对象trybook = app.Workbooks.Open(templateFile,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing);catch (Exception e)throw e;/得到WorkSheet对象sheet = (Excel.Worksheet)book.Sheets.get_Item(1);/ / 将DataTable数据导出到Excel(可动态插入行)/ / DataTable / 插入行的索引 / 插入列的索引 public void DataTableToExcel(System.Data.DataTable dt, int rowIndex, int colIndex)/range = sheet.get_Range(A7, missing);/range.Value2 = raogerrr;/string str = range.Text.ToString();int rowCount = dt.Rows.Count;/DataTable行数int colCount = dt.Columns.Count;/DataTable列数int iRow;int iCol;/将数据导出到相应的单元格for (iRow = 0; iRow rowCount; iRow+)/插入新行this.InsertRows(sheet, iRow+rowIndex);/填充当前行for (iCol = 0; iCol colCount; iCol+)sheet.CellsiRow+rowIndex, iCol+colIndex = dt.RowsiRowiCol.ToString();this.DeleteRows(sheet, rowCount+rowIndex);/Excel.QueryTables qts = sheet.QueryTables;/Excel.QueryTable qt = qts.Add(,);/qt.RefreshStyle = Excel.XlCellInsertionMode.xlInsertEntireRows;/qt.Refresh();/ / 将DataTable数据导出到Excel(可动态插入行)/ / DataTable / 插入数据的起始单元格 public void DataTableToExcel(System.Data.DataTable dt, string cellID)int rowIndex = sheet.get_Range(cellID, missing).Row;int colIndex = sheet.get_Range(cellID, missing).Column;int rowCount = dt.Rows.Count;/DataTable行数int colCount = dt.Columns.Count;/DataTable列数int iRow;int iCol;/利用二维数组批量写入string, array = new stringrowCount,colCount; for (iRow = 0; iRow rowCount; iRow+)for (iCol = 0; iCol colCount; iCol+)arrayiRow,iCol = dt.RowsiRowiCol.ToString();for (iRow = 0; iRow rowCount; iRow+)this.InsertRows(sheet, iRow+rowIndex);this.DeleteRows(sheet, rowCount+rowIndex);range = sheet.get_Range(cellID, missing);range = range.get_Resize(rowCount, colCount);range.Value2 = array;/ / 将DataTable数据导出到Excel(固定)/ / DataTable / 插入数据的起始单元格 public void DataTableToExcel2(System.Data.DataTable dt, string cellID)int rowCount = dt.Rows.Count;/DataTable行数int colCount = dt.Columns.Count;/DataTable列数int
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年体育知识竞赛经典题库及答案(共60题)
- 厨房管理知识试题及答案
- 二年级道德与法治上册试题
- 2025社工《社会工作实务(初级)》考试题及答案
- 安全培训课件及试卷
- 小美课件值得买吗安全吗
- 针刺结合西医治疗慢性胰腺炎的临床疗效观察
- 家庭氛围与情绪管理测试指南
- 健康养生指南营养师专业知识测试题及答案
- 科学探索实验课程题库及答案解析
- 新媒体营销推广案例分析
- 道路客运驾驶员从业资格年度考核报告
- 制药设备改造协议书
- 期末学业质量评价卷一(试卷)2025-2026学年三年级数学上册(人教版)
- 2025年大学《历史学》专业题库- 中国古代史的专题研究
- 隧道下穿燃气管道爆破施工技术方案
- DG-TJ08-401-2025 公共厕所规划和设计标准
- 个人信息保护规则及制度
- 大学生护理生涯规划书
- 后勤的题目及答案
- 成人PICC堵塞的预防及处理专家共识解读课件
评论
0/150
提交评论