GridView导出Excel/Word

 

ContractedBlock.gif ExpandedBlockStart.gif Code
using System;
using System.Collections.Generic;
using System.Text;

using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.Security;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace GV.Common
{
    
public class Tools
    {
        
#region 常用js输出
        
/*参考:blog.csdn.net/zhoufoxcn/archive/2008/04/21/2312440.aspx
         
*/

        
/// <summary>
        
/// 输出简单提示
        
/// </summary>
        
/// <param name="msg"></param>
        
/// <param name="page"></param>
        public static void Alert(string msg, Page page)
        {
            
string js = @"<Script language='JavaScript'>alert('" + msg + "');</Script>";
            
if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "alert"))
            {
                page.ClientScript.RegisterStartupScript(page.GetType(), 
"alert", js);
            }
            
//page.ClientScript.RegisterStartupScript(page.GetType(), "alert", "alert('" + str + "!');", true);
        }

        
#endregion

        
#region 输出word,excel

        
/// <summary>
        
/// 用法:
        
/// Tools.Export(GridView1, "application/ms-word", "123.doc");
        
/// Tools.Export(GridView1, "application/vnd.ms-excel", "data.xls");
        
/// </summary>
        
/// <param name="gridView">GridView</param>
        
/// <param name="FileType">类型</param>
        
/// <param name="FileName">文件名</param>
        public static void Export(GridView gridView, string FileType, string FileName)
        {
            StringBuilder sb 
= new StringBuilder();
            StringWriter sw 
= new StringWriter(sb);
            HtmlTextWriter htw 
= new HtmlTextWriter(sw);

            Page page 
= new Page();
            HtmlForm form 
= new HtmlForm();

            gridView.EnableViewState 
= false;
            page.EnableEventValidation 
= false;
            page.DesignerInitialize();

            page.Controls.Add(form);
            form.Controls.Add(gridView);
            page.RenderControl(htw);

            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.Buffer 
= true;
            HttpContext.Current.Response.ContentType 
= FileType;
            HttpContext.Current.Response.AddHeader(
"Content-Disposition""attachment;filename=" + FileName);
            HttpContext.Current.Response.Charset 
= "UTF-8";
            HttpContext.Current.Response.ContentEncoding 
= Encoding.Default;
            HttpContext.Current.Response.Write(sb.ToString());
            HttpContext.Current.Response.End();
        }

        
#endregion
    }
}

 

转载于:https://www.cnblogs.com/greatverve/archive/2009/04/04/1429616.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值