注意excel里格式的问题,如0开头的会自动去掉,长数字会用科学记数法表示(不管你的数据是什么类型的)。解决的方法代码里都包含了。

.aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ToExcel.aspx.cs" Inherits="Excel_ToExcel" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" OnRowDataBound="GridView1_RowDataBound"
            Width="233px">
        </asp:GridView>
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="ExportToExcel" />
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:connectionString %>"
            SelectCommand="SELECT * FROM [test]"></asp:SqlDataSource>
   
    </div>
    </form>
</body>
</html>

.cs:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;

public partial class Excel_ToExcel : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

}

public override void VerifyRenderingInServerForm(Control control)
    {
     
    }

protected void Button1_Click(object sender, EventArgs e)
    {
        string style = @"<style> .text { mso-number-format:\@; } </script> ";
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        this.GridView1.RenderControl(htw);
        sw.Close();
        Response.AddHeader("Content-Disposition", "attachment; filename=test.xls");
        Response.ContentType = "application/ms-excel";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
        Response.Write(style);
        Response.Write(sw);
        Response.End();
    }
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            e.Row.Cells[1].Attributes.Add("class", "text");
        }
    }
}

如果导出的文件将会出现乱码,试着将Response.ContentEncoding = System.Text.Encoding.UTF7;
或Encoding.UTF8。

GridView直接以excel格式导出到客户端相关推荐

  1. Java实现复杂excel格式导出

    根据公司业务需求,导出复杂格式的Excel表格,主要是单元格的合并. 效果图如下: 标题.表头.内容样式 具体根据各自业务需求对参数进行调整 /*** 创建标题样式** @param wb* @ret ...

  2. 前端使用xlsx、file-saver实现自定义excel格式导出(列宽、字体、边框、行高)

    前端使用xlsx.file-saver实现excel导出 前端使用xlsx.file-saver实现excel导出 1.下载依赖 2.在需要导出excel的页面使用依赖 3.实现导出excel文件功能 ...

  3. 使用layui把数据以Excel格式导出

    昨天领导让我给页面加一个数据导出, 开始我以为是本页导出,我就加一个layui自带的,结果告诉我不行,要导出所有的数据,而且不是页面展示的那个表格的,我就试试 引入layui的JS和CSS就不说了直接 ...

  4. js导出excel单元格内换行符代码_如何使用php以excel格式导出带换行符的值?

    我使用PHPExcel将数据从我的数据库导出到excel文件 . 到目前为止它完美无缺 . 我的问题是我有一个字符串值,我想在换行符中分隔,但必须包含在1个单元格中 . 我怎样才能做到这一点?我已成功 ...

  5. excel格式导出合并单元格

    1.首先看一下,我们导出的模板: 可以看到,导出的模板需要合并单元格,其中在每个项目中工程编号是唯一的,所以需求中有一点,我们必选按照:项目名称+工程编号,作为唯一性来做每个sheet的区分.下面看代 ...

  6. iText导出pdf,poi导出excel并下载到客户端

    项目中需要做导出功能,要支持excel,pdf导出. excel导出我选择使用poi:pdf导出我选择使用iText,在此单独做记录. 先说说在设计与开发中的问题,从整体上把握设计思路. 思路(一) ...

  7. 如何将mysql表结构导出成Excel格式的(并带备注)

    方法一: 1.使用一个MySQL管理工具:SQLyog,点击菜单栏"数据库"下拉的最后一项: 导出的格式如下: 2.要想转成Excel格式的只需手动将该表复制到Excel中去. 方 ...

  8. easyexcel导出excel,大数据量100万以内分页查询zip格式导出

    easyexcel导出excel,大数据量100万以内分页查询zip格式导出 准备工作 整体思路 controller层 service层 mapper层 VO 表结构 测试 备注 easyExcel ...

  9. asp.net导出GridView数据到Excel

    最近做了一个导出GridView数据到Excel中的例子,把代码和遇到的一些问题放出来.  1        Response.Clear();  2        Response.Buffer = ...

最新文章

  1. VISTA中释放系统还原占用的硬盘空间
  2. 使用Context和Hooks来管理状态
  3. Leetcode c语言-Implement strStr()
  4. 连接Access数据库的Provider错误
  5. mysql索引和redis比较_聊聊Mysql索引和redis跳表
  6. sql语句中遇到“被零除错误”提示的解决方法
  7. mysql 修改数据库密码
  8. 网易云音乐云盘存歌曲加歌词
  9. matlab更改类型,matlab数据类型和转换
  10. 微信小程序--对接萤石云视频监控
  11. 关键词排名软件-免费的自动关键词排名软件
  12. 煮酒论英雄——点评三国人物
  13. 西瓜视频需要社区文化吗?
  14. 骁龙865与鸿蒙900,天玑2000与骁龙865哪个好_天玑2000与骁龙865对比
  15. stm32c8t6通过onenet上传gps经度与维度
  16. html测验小题目(来源于W3School)
  17. layui实现带搜索功能的select
  18. 京东主图如何优化,一键自动替换长图
  19. WordPress 简约主题mkBlog v2.2下载
  20. WebKit ndash; WebKit For Android

热门文章

  1. 拖拽公式图片、一键转换LaTex公式,这款开源公式识别神器比Mathpix Snip更适合你...
  2. 最新开源!TransReID:首个基于Transformer的ReID网络,各项任务全面领先!
  3. 再见,Kaggle!
  4. 使用OpenCV实现摄像头测距
  5. Python五种实用的小技巧
  6. 用Python如何查快递?
  7. ACMNO.44 C语言-平均分 有N个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入N个学生的数据,要求打印出3门课的总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩)
  8. 绝对不容错过:最完整的检测模型评估指标mAP计算指南(附代码)在这里!
  9. CMake编译工具与项目构建
  10. 使用U-Nets和深度学习进行自动缺陷检查