DataTable输入导出Excel

    xiaoxiao2021-03-26  26

    protected void ExpExcel(DataTable dt)         {             HttpContext.Current.Response.Clear();             HttpContext.Current.Response.ClearContent();             HttpContext.Current.Response.ClearHeaders();             HttpContext.Current.Response.Buffer = true;   //仅仅是页面缓存             HttpContext.Current.Response.Charset = "GB2312";             HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls");             HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//("GB2312");//设置输出流为简体中文              HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";//设置输出文件类型为excel文件。              System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo("ZH-CN", true);             string sep = "";             foreach (DataColumn dc in dt.Columns)             {                 HttpContext.Current.Response.Write(sep + dc.Caption);                 sep = "\t";             }             HttpContext.Current.Response.Write("\n");             int i;             foreach (DataRow dr in dt.Rows)             {                 sep = "";                 for (i = 0; i < dt.Columns.Count; i++)                 {                     //因为有可能在字段中出现回车,所以需要先将回车替换掉.                     //HttpContext.Current.Response.Write(sep + dr[i].ToString());                     HttpContext.Current.Response.Write(sep + dr[i].ToString().Replace("\t", "").Replace("\n", "").Replace("\r", ""));                     sep = "\t";                 }                 HttpContext.Current.Response.Write("\n");             }             HttpContext.Current.Response.End(); //不要执行后面的页面部分否则会把页面的内容也加到Excel后面         }
    转载请注明原文地址: https://ju.6miu.com/read-658332.html

    最新回复(0)