html导出excel数据格式,html导出到excel数据格式不正确解决方法(示例代码)

同事离职 ,把手头的程序给我了,第二天客户说:“为什么我们导出的excel不会自己汇总啊??”

。。。。您稍等一下,我看一下哈(我怎么知道你们导出的excel为什么不会汇总啊!!)

打开程序

dc8d21f3ab0e41ee95620f6f211818af.jpg

没什么问题,然后导出打开

7f903a7aab2b420086c1d041d1fdd4fa.jpg

这是神马?合着你导出来的全部是文本格式的了。文本格式存储的数字怎么汇总你告诉我。

看代码吧

2310aede44764a71990dce9d9afce3b0.jpg

d0c980a051a84fb4968a02695a6794b9.jpg

1 voidexportexcel()2 {3 DataTable dt =getDataTable();4 if (dt != null)5 {6 Response.Clear();7 Response.Buffer = true;8 Response.Charset = "GB2312";9 Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(exceltitle.Value, System.Text.Encoding.UTF8) + ".xls");10 Response.ContentEncoding =System.Text.Encoding.UTF8;11

12 Response.ContentType = "application/ms-excel";13 this.EnableViewState = false;14 System.IO.StringWriter oStringWriter = newSystem.IO.StringWriter();15 System.Web.UI.HtmlTextWriter oHtmlTextWriter = newSystem.Web.UI.HtmlTextWriter(oStringWriter);16

17 gvExport = newSystem.Web.UI.WebControls.GridView();18 gvExport.DataSource =dt.DefaultView;19 gvExport.AllowPaging = false;20 gvExport.DataBind();21 gvExport.Attributes.Add("style", "vnd.ms-excel.numberformat:@");22 //返回客户端

23 gvExport.RenderControl(oHtmlTextWriter);24 Response.Write(oStringWriter.ToString());25 Response.End();26

27

28 }29 close();30 }

View Code

excel的数据格式:gvExport.Attributes.Add("style", "vnd.ms-excel.numberformat:@");

下面是常用的一些格式:

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%

你这里输出的格式就是文本啊!果断的改成第三条数字类型的(哈哈,我是不是很聪明)

c8cdab73d5cb4e0c8eb28cb8e43084c1.jpg

等等,我表头的日期怎么回事,也变成数字了,看到它还有两位小数的就挠头了(失误,失误哈)

gvExport.HeaderRow.Attributes.Add("style", "

show-6779.htmlvnd.ms-excel.numberformat:@");

gvExport.Attributes.Add("style", "

show-6779.htmlvnd.ms-excel.numberformat:#,##0.00");

把表头改成原来的就行了,咱也不去改成时间类型了。

f061b70a30154420805a44d5c40fc4e9.jpg

ok!完美,perfect!!!

本文由@巴黎_帅哥 原创,未经同意不得转载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值