gridview导出excel,如何将gridview的数据导出到EXCEL
今天给各位分享gridview导出excel的知识,其中也会对如何将gridview的数据导出到EXCEL进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
gridview 控件导出到excel 数据丢失,问了好多人都没有搞定。
我也是使用gridview导出的但是没有出现问题我怀疑你是没有把数据显示成文本形式你看下我代码
public void Export(System.Web.UI.Control control)
{
Response.Clear();//清除缓冲区流中所有内容的输出
Response.AppendHeader("Content-Disposition","attachment;filename=result.xls");
Response.ContentType="application/ms-excel";
//字符集设置
GridView1.Attributes.Add("style","Vnd.ms-excel.numberformat:@");//以文本形式显示数据:解决形如0001变成1的问题;
Response.Charset="GB2312";
HttpContext.Current.Response.ContentEncoding= System.Text.Encoding.UTF8;
//Response.ContentEncoding= System.Text.Encoding.UTF8;
//关闭控件的视图状态
control.Page.EnableViewState= false;
this.GridView1.AllowPaging= false;//这里是有分页的重新绑定可以把所有都导出
this.GridView1.Columns[8].Visible= false;//隐藏修改
this.GridView1.Columns[9].Visible= false;//隐藏删除
下面是你重新绑定的代码
GridView1.DataSourceID="ObjectDataSource1";//确定数据源
GridView1.DataBind();
//初始化HtmlWriter
System.IO.StringWriter writer= new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWriter= new System.Web.UI.HtmlTextWriter(writer);
control.RenderControl(htmlWriter);
//输出
Response.Write(writer.ToString());
Response.Write("<script>alert('导出成功!')</script>");
//最后在分页绑定OK!!!
this.GridView1.AllowPaging= true;
GridView1.DataSourceID="ObjectDataSource1";//确定数据源
GridView1.DataBind();
Response.End();
}
gridview 导出excel 颜色问题
不知道你说的是字体颜色还是单元格填充色。
如果你说的软件中不能设置,也可以在EXCEL中设置。
如果指的是填充色,导出后,在EXCEL中,按CTRL+A全选当前表,再在工具中的填充颜色按钮中点选一下“无填充色”就行了。
如果是指字体颜色,按上面操作后,点工具工具栏上“字体颜色”中的“自动”就行了。
如何将gridview的数据导出到EXCEL
给你个思路,分页的话,在导出时先关闭分页,绑数据,导出后,再打开分页
方法1简单:
public void ToExcel()//整个GRIDVIEW导出到EXCEL
{
string filename="数据表"+ DateTime.Now.ToString("yyyyMMdd")+".xls";
string style=@"<style>.text{ mso-number-format:\@;}</script>";//解决第一位字符为零时不显示的问题
this.GridView1.AllowPaging= false;//关闭分页
this.GridView1.DataBind();//绑定数据
filename= HttpUtility.UrlEncode(filename, System.Text.Encoding.UTF8);//解决导出EXCEL时文件名为汉字时乱码的问题
Response.ClearContent;
Response.ContentEncoding= System.Text.Encoding.GetEncoding("GB2312");
Response.ContentType="application/excel";
Response.AppendHeader("Content-Disposition","attachment;filename="+ filename);
System.IO.StringWriter sw= new System.IO.StringWriter();//定义一个字符串写入对象
HtmlTextWriter htw= new HtmlTextWriter(sw);//将html写到服务器控件输出流
this.GridView1.RenderControl(htw);//将控件GRIDVIEW中的内容输出到HTW中
Response.Write(style);
Response.Write(sw);
Response.End();
this.GridView1.AllowPaging= true;
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fangqm/archive/2009/08/01/4400306.aspx
.net中两个GRIDVIEW导出到一个excel
其实你可以使用开源工具直接导出datatable中的数据,给你提供一个org.in2bits.MyXls。网上搜一下开源的东西,使用非常方便,可以把datatable,或者dataset导出成标准excel文件,你使用上面的方式其实生成的不是标准的excel,所以你上面导出的excel应该不能再重新导进到数据库中。
不过楼上的方法也可以试试,祝你好运,元旦快乐!
OK,关于gridview导出excel和如何将gridview的数据导出到EXCEL的内容到此结束了,希望对大家有所帮助。