码迷,mamicode.com
首页 > Web开发 > 详细

.net中将DataTable导出到word、Excel、txt、htm的方法

时间:2014-10-29 01:40:14      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:http   io   os   ar   for   sp   数据   on   html   

dt:DataTable

strFile:fileName

strExt:type


private void GridExport(DataTable dt, string strFile, string strExt)
    {
        string strAppType = "";
        switch (strExt)
        {
            case "xls":
                strAppType = "application/ms-excel";
                break;
            case "doc":
                strAppType = "application/ms-word";
                break;
            case "txt":
                strAppType = "application/ms-txt";
                break;
            case "html":
            case "htm":
                strAppType = "application/ms-html";
                break;
            default: return;
        }
        GridView MyGridView = new GridView();
        MyGridView.DataSource = dt;
        MyGridView.DataBind(); 
        HttpContext.Current.Response.Clear();
        HttpContext.Current.Response.Buffer = true;
        HttpContext.Current.Response.AddHeader("Content-Type", "text/html; charset=GB2312");
        HttpContext.Current.Response.AppendHeader("Content-Disposition", string.Format("attachment;filename={0}.{1}", HttpUtility.UrlEncode(strFile,Encoding.GetEncoding("GB2312")), strExt));
        HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312"); 
        HttpContext.Current.Response.ContentType = strAppType; 
        //MyGridView.Page.EnableViewState = false;
        //二、定义一个输入流
        System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN", true);
        System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad);
        System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
        //三、将目标数据绑定到输入流输出
        MyGridView.RenderControl(oHtmlTextWriter);
        HttpContext.Current.Response.Write(oStringWriter.ToString());
        HttpContext.Current.Response.End();
    }

.net中将DataTable导出到word、Excel、txt、htm的方法

标签:http   io   os   ar   for   sp   数据   on   html   

原文地址:http://www.cnblogs.com/lxshanye/p/4058407.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!