C#中导出excel文档
来源:互联网 发布:迪克斯特拉算法 编辑:程序博客网 时间:2024/06/06 15:04
private HttpContext Context = HttpContext.Current;
//数据导出
public string ExportData()
{
Context.Response.ContentType = "application/vnd.ms-excel"; Context.Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8"); Context.Response.Charset = "UTF-8"; string fileName = "成绩明细表.xls";//导出的excel文档名称 if (Context.Request.ServerVariables["http_user_agent"].ToString().IndexOf("Firefox") != -1){ Context.Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName); }else { Context.Response.AppendHeader("Content-Disposition", "attachment;filename=" + Context.Server.UrlEncode(fileName)); } #region 产生DataGrid,并让浏览器当做EXCEL下载或者打开 System.IO.StringWriter strWriter = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter); DataGrid dgExport = new DataGrid(); dgExport.DataSource = ds.Tables[0];//ds数据源 dgExport.AllowPaging = false; dgExport.ItemStyle.Wrap = true; dgExport.HeaderStyle.Wrap = true; dgExport.AutoGenerateColumns = false; this.AddDataBindColumns(dgExport);//exccel文档表头绑定 dgExport.ItemDataBound += new DataGridItemEventHandler(dgExport_ItemDataBound);//excel单元格数据处理 dgExport.DataBind(); dgExport.RenderControl(htmlWriter); Context.Response.Clear(); Context.Response.Write("<meta http-equiv=\"content-type\" content=\"application/ms-excel; charset=UTF-8\"/>" + strWriter.ToString()); Context.Response.End();
}
private void AddDataBindColumns(DataGrid dgExport)
{
dgExport.Columns.Add(new BoundColumn() { DataField = "name", HeaderText = "学号" });dgExport.Columns.Add(new BoundColumn() { DataField = "id", HeaderText = "身份证号" });dgExport.Columns.Add(new BoundColumn() { DataField = "grade", HeaderText = "成绩" });foreach (BoundColumn column in dgExport.Columns){ column.ItemStyle.HorizontalAlign = HorizontalAlign.Center; column.HeaderStyle.HorizontalAlign = HorizontalAlign.Center; column.HeaderStyle.Width = 200;}
}
//格式化单元格
void dgExport_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){ DataRowView drv = (DataRowView)e.Item.DataItem; e.Item.Cells[0].Text = "=\"" + drv["id"].ToString() + "\"";//对单元格数据进行单独处理}
}
/页面处理/
<span><iframe id="frmExport" style="display: none"></iframe> <a href="#" onclick="ExportData()">导出</a></span>
/js处理/
$("#frmExport").attr("src", “后台访问路径”);
阅读全文
0 0
- C#中导出excel文档
- 导出Excel文档 解决导出Excel文档显示乱码 在C#桌面程序导出Excel文档
- C#中导出到Excel
- C#中导出Excel表
- C#使用POI把DataGridView中数据导出到excel文档中
- C#中导出PDF格式文档
- C# NPOI 导入与导出Excel文档 兼容xlsx, xls
- C#从Datagrid中导出EXCEL表
- winForm中C#实现Excel的导出
- C# winform中导出到excel
- 如何在C#中导出Excel表
- c#中导入、导出Excel表
- C# 从datagridview中导出到excel
- C#中导出Excel报表的方法
- C#中ListView数据导出excel表
- 在C#中导出数据到Excel
- C#中DataGridView数据导出到Excel
- C#数据导出到Excel中
- linux网络有线连接失败“设备未托管” 解决办法
- sublime安装及插件安装
- 关于SQL查询语句的模糊查询,排序用法,limit用法的介绍
- jquery 自动触发<a> 标签的click()方法
- spring boot 读取配置文件
- C#中导出excel文档
- MYSQL数据库-(十三)- join连接讲解、多表删除
- spark streaming从指定offset处消费Kafka数据
- mysql0613
- Creating Macros
- httpd2
- android 6.0 及其以下,安装,卸载 ,monkey
- C++使用变量作为数组长度
- Eclipse中maven详解