.NET操作Excel
一.读取Excel数据,并显示
1.配置文件
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<appSettings>
<!--连接03版本的-->
<!--<add key="SQLCONNECTIONSTRING" value="Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source="/>
<add key="DBPATH" value="App_Data\username.xls"/>-->
<!--连接07版本的-->
<add key="SQLCONNECTIONSTRING" value="Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Excel 12.0 Xml;Data Source=" />
<add key="DBPATH" value="App_Data\usernames.xlsx"/>
<!--连接07access数据库-->
<add key="OLEDBCONNECTIONSTRING" value="Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Access 12.0 Xml;Data Source=" />
<!--<add key="DBPATH" value="App_Data\username.accdb"/>-->
<!--使用.net生成Excel表格-->
<add key="SQLCONNECTIONSTR" value="data source=.;uid=sa;pwd=123456;database=students;pooling=true"/>
</appSettings>
</configuration>
2.
using System;
using System.Configuration;
using System.Data;
using System.Data.OleDb;
namespace WebApplication
{
public partial class MyExcelToDG : System.Web.UI.Page
{
private readonly string SQLCONNECTIONSTRING = ConfigurationManager.AppSettings["SQLCONNECTIONSTRING"].ToString();
private readonly string DBPATH = ConfigurationManager.AppSettings["DBPATH"].ToString();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.DataSource = CreateDataSource();
GridView1.DataBind();
}
}
private DataSet CreateDataSource()
{
//设置Excel的文件访问地址
String ExcelDBPath = SQLCONNECTIONSTRING + Server.MapPath(DBPATH) + ";";
//定义访问Excel文件的连接
OleDbConnection conn = new OleDbConnection(ExcelDBPath);
//OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM[username$]",conn);
OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM students", conn);
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
}
}
二.将sqlserver中的数据导出到Excel中
using System;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace WebApplication
{
public partial class MyDataToExcel : System.Web.UI.Page
{
private readonly string SQLCONNECTIONSTR = ConfigurationManager.AppSettings["SQLCONNECTIONSTR"].ToString();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//创建Excel文件
try
{
CreateExcelTable();
Response.Write("<script>alert('成功导出!')</script>");
}
catch (Exception)
{
Response.Write("<script>alert('发生错误!')</script>");
}
}
}
//获取数据
private DataSet GetData()
{
//从数据库中获取数据
String cmdText = "Select * from Student_Info";
using (SqlConnection conn = new SqlConnection(SQLCONNECTIONSTR))
{
SqlDataAdapter da = new SqlDataAdapter(cmdText, conn);
conn.Open();
DataSet ds = new DataSet();
da.Fill(ds);
return (ds);
}
}
//创建Excel文件
private void CreateExcelTable()
{
//从数据库获取数据
DataSet ds = GetData();
//创建Excel对象
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
//设置行和列的索引
int rowIndex = 1;
int collndex = 0;
//添加Excel对象的WorkBooks
excel.Application.Workbooks.Add(true);
System.Data.DataTable table = ds.Tables[0];
//将所得到的表的列名,赋给单元格
foreach (DataColumn col in table.Columns)
{
//添加列名
collndex++;
excel.Cells[1, collndex] = col.ColumnName;
}
//同样的方法处理数据
foreach(DataRow row in table.Rows)
{
rowIndex++;
collndex = 0;
foreach (DataColumn col in table.Columns)
{
collndex++;
excel.Cells[rowIndex, collndex] = row[col.ColumnName].ToString();
}
}
//不可见,即后台处理
excel.Visible = false;
excel.DisplayAlerts = false;
//保存刚才创建的Excel表格
excel.Save(MapPath("App_Data/ExcelTable.xls"));
excel.Application.Workbooks.Close();
excel.Application.Quit();
excel.Quit();
//释放使用的Excel对象
System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
GC.Collect();
}
}
}
转载于:https://www.cnblogs.com/java20130723/archive/2012/12/16/3211492.html
.NET操作Excel相关推荐
- ASP操作Excel技术总结
目录 一. 环境配置 二. ASP对Excel的基本操作 三. ASP操作Excel生成数据表 四. ASP操作Excel生成Chart图 五. 服务器端Excel文件浏览.下载.删除方案 ...
- C#操作Excel文件(转)
摘要:本文介绍了Excel对象.C#中的受管代码和非受管代码,并介绍了COM组件在.net环境中的使用. 关键词:受管代码:非受管代码:Excel对象:动态连接库 引言 Excel是微软公司办公自动化 ...
- php删除excel文件,php操作excel文件的方法小结
php操作excel文件的方法小结 php操作excel文件的方法有哪些?就跟随百分网小编一起去了解下吧,想了解更多相关信息请持续关注我们应届毕业生考试网! 一.php,不用COM,生成excel文件 ...
- php 设置excel格式,php 操作excel文件的方法小结
用php生成excel文件的方法,单独就是用的php,注意一下数据的输入方法即可. 一.php,不用COM,生成excel文件 header("Content-type:applicatio ...
- 【MFC/C++操作Excel】Excel篇 (OLE/COM)
MFC操作Excel 下面的操作基于Excel2003 一.初始化操作 1.导入类库 点击查看->建立类向导-> Add Class...\From a type Library...-& ...
- VC操作EXCEL(1)
Excel 为发人员提供了强大的外部接口,方便开发人员进行二次开发.最近笔者就采用 excel 的 automation 技术成功地解决了 excel 报表的自动生成功能. 首先给大家介绍一下报表创建 ...
- PB 操作EXCEL表的方法
1.创建execl对象 eole=CREATEOBJECT("Excel.application") 2.添加新工作簿 eole.Workbooks.add 3.设置第3个工 ...
- c#如何操作excel??
登 录.. [注 册] 忘记密码 注销登录 <script>document.write('');</script> csdn.ne ...
- python excel操作单元格_python 操作excel表格的方法
说明:由于公司oa暂缺,人事妹子在做考勤的时候,需要通过几个excel表格去交叉比对员工是否有旷工或迟到,工作量大而且容易出错. 这时候it屌丝的机会来啦,花了一天时间给妹子撸了一个自动化脚本. 1. ...
最新文章
- 1m网速是什么意思,1m带宽是什么意思
- 使用OpenCV进行直播(附代码)
- vue是什么_什么是VUE?vue有什么作用?
- San CLI 4.0 升级指南
- [读书笔记]My Life--Bill Clinton
- 小波说雨燕 第三季 构建 swift UI 之 UI组件集-视图集(二)ActionSheet视图 学习笔记...
- jggrid 设置了自适应宽度仍然有滚动条的问题
- windows 服务实现定时任务调度(Quartz.Net)
- 什么是灰度发布?灰度发布方式 系统的割接 灰度部署典型的框架架构
- Django可扩展吗? [关闭]
- 2021-06-24边框塌陷解决方案
- 数字签名和数字证书 流程图 (一目了然)
- 硬盘出错,导致文件坏了
- oracle中插入图片,在Oracle数据库的表中插入图片的方法
- 深度学习之反向传播推导
- 一些文字游戏....
- python三维曲面合并_绘制多面体的三维曲面
- 贝壳DMP平台建设实践
- r1音箱原生系统更改服务器,低门槛不破坏R1功能改AUX音源电脑喇叭[已更新完整]...
- java8 日期和时间
热门文章
- Matrix PKU 2155
- SKYLINE UVALive - 4108
- 3224: Tyvj 1728 普通平衡树
- [LeetCode] 547. Friend Circles Java
- (剑指Offer)面试题5:从尾到头打印链表
- 50个jQuery代码段帮你成为更出色的JS开发者
- Linux编程简介——VI
- 技巧:在 C/C++中如何构造通用的对象链表
- Linq(03)基础之Orderby group-by
- java设计模式在项目中的使用_SpringMVC项目里,有必要使用一些设计模式吗?