GridView导出Excel实现原理与代码
为了完成领导交代的任务,这几天都在做数据展现,因为时间比较紧,所以也没做太复杂,使用GridView来展示数据库表。几乎没对GridView的格式做什么设定,从配置文件中加载SQL,跑出数据就直接绑定到GridView。发现了一些问题,比如GridView的自动绑定列的宽度是没法设定的,而此时GridView的表格输出是不带宽度信息的,所以导致表格列比较多的时候显示起来会挤到页面里面很难看,由于表的列数并不是固定的,所以也没法很简单的用模版列的方式做,最后只好直接将表格宽度设置成一个很大的数了事。
此外做了个导出Excel的功能,主要代码如下:
private void DumpExcel(GridView gv, string FileName)
{//带格式导出
string style = @"<style> .text { mso-number-format:\@; } </style>";
Response.ClearContent();
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AddHeader("content-disposition", "attachment; filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
Response.ContentType = "application/excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gv.RenderControl(htw);
// Style is added dynamically
Response.Write(style);
Response.Write(sw.ToString());
Response.End();
}
public override void VerifyRenderingInServerForm(Control control)
{
}
上面的行17的重载函数是必须的,否则会报“GridView要在有run=server的From体内”的错。
此外,变量style的作用是控制GridView列的样式,避免发生excel表中字符前导0被当成数字给截掉这样的问题, 通过Response.Write方法将其添加到输出流中。最后把样式添加到ID列。这一步需要在RowDataBound事件中完成:
代码如下:
1protected void gvUsers_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[1].Attributes.Add("class", "text");
}
}
相关推荐
-
asp.net DataGridView导出到Excel的三个方法[亲测]
#region DataGridView数据显示到Excel /// <summary> /// 打开Excel并将DataGridView控件中数据导出到Excel /// </summary> /// <param name="dgv">DataGridView对象 </param> /// <param name="isShowExcle">是否显示Excel界面
-
ASP.NET使用GridView导出Excel实现方法
本文实例讲述了ASP.NET使用GridView导出Excel实现方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: /// <summary> /// 将DataTable数据导出到EXCEL,调用该方法后自动返回可下载的文件流 /// </summary> /// <param name="dtData">要导出的数据源</param> public static void DataTable1Excel(S
-
GridView导出Excel常见的5种文本格式 原创
1) 文本:vnd.ms-excel.numberformat:@ 2) 日期:vnd.ms-excel.numberformat:yyyy/mm/dd 3) 数字:vnd.ms-excel.numberformat:#,##0.00 4) 货币:vnd.ms-excel.numberformat:¥#,##0.00 5) 百分比:vnd.ms-excel.numberformat: #0.00% 用法:在GridView的RowDataBound事件中加入代码e.Row.Cells[0].At
-
通过剪贴板实现将DataGridView中的数据导出到Excel
将DataGridView中的数据导出到Excel中有许多方法,常见的方法是使用Office COM组件将DataGridView中的数据循环复制到Excel Cell对象中,然后再保存整个Excel Workbook.但是如果数据量太大,例如上万行数据或者有多个Excel Sheet需要同时导出,效率会比较低.可以尝试使用异步操作或多线程的方式来解决UI死锁的问题. 这里介绍一种直接通过Windows剪贴板将数据从DataGridView导出到Excel的方法.代码如下: 复制代码 代码如下:
-
asp.net GridView导出到Excel代码
复制代码 代码如下: StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter htw = new HtmlTextWriter(sw); Page page = new Page(); HtmlForm form = new HtmlForm(); GVLinkman.EnableViewState = false; page.EnableEventValidat
-
GridView选择性导出Excel解决方案
一.需求分析 首先根据用户需求,可以进行选择性导出,之前已经做了全部导出,这次新需求又来了,不过仔细想想也对,全部导出几万条数据,意义并不大,而可选择性的导出用户需要的数据才是用户需要的.有需求就有解决方法. 任何问题的解决方法都不止一个,GridView的选择性导出也一样,首先GridView绑定的是数据库的表数据,选择导出,我们也可以从数据中查询需要的数据,可以直接从前台GridView表中取得数据,问题来了,怎么判断选中了,怎么后去选中的那条信息的主键(或者获得整条信息)两个方向,到底哪个
-
C#导出GridView数据到Excel文件类实例
本文实例讲述了C#导出GridView数据到Excel文件类.分享给大家供大家参考.具体如下: 这段C#代码自定义了一个封装类,用于将GridView数据导出到Excel文件 using System; using System.Web; using System.Web.UI; using System.IO; using System.Web.UI.WebControls; namespace DotNet.Utilities { public class ExportExcel { pro
-
C#使用RenderControl将GridView控件导出到EXCEL的方法
本文实例展示了C#使用RenderControl将GridView控件导出到EXCEL的方法,是非常实用的一个功能,分享给大家供大家参考.具体如下: 主要功能代码如下: // 把GridView输出到Excel文件 private void ExportExcel(GridView gridView, string title, string title2, string fileName) { int nHideCols = 0; //如果不想输出出某列,将Visible设为false即可 f
-
GridView导出Excel实现原理与代码
为了完成领导交代的任务,这几天都在做数据展现,因为时间比较紧,所以也没做太复杂,使用GridView来展示数据库表.几乎没对GridView的格式做什么设定,从配置文件中加载SQL,跑出数据就直接绑定到GridView.发现了一些问题,比如GridView的自动绑定列的宽度是没法设定的,而此时GridView的表格输出是不带宽度信息的,所以导致表格列比较多的时候显示起来会挤到页面里面很难看,由于表的列数并不是固定的,所以也没法很简单的用模版列的方式做,最后只好直接将表格宽度设置成一个很大的数了事
-
C#实现GridView导出Excel实例代码
导出Excel在很多项目中经常用到,本人介绍了C#实现GridView导出Excel实例代码,也全当给自己留下个学习笔记了. using System.Data; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.IO; using System.Text; namespace DotNet.Utilities { /// <summary> /// Summary desc
-
Jquery ajax请求导出Excel表格的实现代码
直接贴代码吧 $("#btn-export").click(function(){ var exportExcel = "export_excel"; dataParams[exportExcel] = 1; var params = $.param(dataParams); var url = host+"&"+params; $('<form method="post" action="' + ur
-
vue+springmvc导出excel数据的实现代码
vue端处理 this.$http.get(this.service + '/user/excel',{responseType: 'blob'}).then(({data})=> { console.info(typeof data) var a = document.createElement('a'); var url = window.URL.createObjectURL(data); a.href = url; a.download = '用户统计信息.xls'; a.click()
-
Java利用Easyexcel导出excel表格的示例代码
目录 1.导入 EasyExcel Maven包 2.配置 3.输出Excel到前端 1.导入 EasyExcel Maven包 <!--easyexcel 导出excel依赖--> <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.2.7</version> </depend
-
vue中导出Excel表格的实现代码
项目中我们可能会碰到导出Excel文件的需求,一般后台管理系统中居多,将table中展示的数据导出保存到本地.当然我们也可以通过一些处理来修改要导出的数据格式,具体需求具体对待. 1.首先我们需要安装3个依赖,file-saver.xlsx和script-loader. 使用npm安装: npm install file-saver xlsx -S npm install script-loader -D 使用yarn安装: yarn add file-saver xlsx -S yarn ad
-
Java导出Excel通用工具类实例代码
一.概述 相信大家在工作过程中,都会遇到这样一个需求,就是将相关的数据列表导出成excel,那么,有没有通用的导出方式呢,这里,就带着大家一起来用Java实现一个通用的导出Excel的工具. 二.项目实现 1.构建pom.xml 我们的工程是利用Maven来构建的,项目具体搭建过程大家可以参见网上其他资料,这里我们仅给出最核心的Maven配置 <dependency> <groupId>org.apache.poi</groupId> <artifactId>
-
C#导入导出Excel数据的两种方法
本文为大家分享了C#导入导出Excel数据的具体代码,供大家参考,具体内容如下 注:对于实体类对象最好新建一个并且继承原有实体类,这样可以将类型进行修改: 方法一:此种方法是用EPPLUS中的FileInfo流进行读取的(是不是流我还真不太了解,若有懂得请留言,非常感谢了) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tas
随机推荐
- Can't connect to MySQL server on localhost (10061)解决方法
- Python探索之修改Python搜索路径
- asp.net多图片上传实现程序代码
- win2003服务器asp.net权限设置问题及解决方法
- 在ASP.NET 2.0中操作数据之六十七:在TableAdapters中使用JOINs
- Chrome调试折腾记之JS断点调试技巧
- ASP.NET(C#)读取Excel的文件内容
- PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
- php curl模拟post请求小实例
- setTimeout和setInterval的深入理解
- Java 的 FileFilter文件过滤与readline读行操作实例代码
- JSP运行原理和九大隐式对象说明
- java web开发中大量数据导出Excel超时(504)问题解决
- jquery CSS选择器笔记
- Jquery Ajax请求代码(2)
- 在easyUI开发中,出现jquery.easyui.min.js函数库问题的解决办法
- Android实现几种推送方式解决方案
- Android监听横竖屏切换功能
- 学习Django知识点分享
- php文件包含的几种方式总结