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


    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();
        }

  • 相关阅读:
    Linux磁盘分区MBR分区
    win10 1809磁盘占用总是100%
    LINUX系统的7种运行级别
    【工作环境】公司主域控硬盘损坏后的维修步骤
    程序员的一些人生感悟
    dispatch_get_main_queue 的同步异步问题
    虚拟机VirtualBox中Ubuntu无法全屏解决方法
    十大报错、报异常、跑不起来原因
    关于scrollbarfacecolor只支持ie的解决方法
    一个严肃的面试经验
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5182121.html
Copyright © 2020-2023  润新知