首页 > 代码库 > 导出Excel并下载,但无法定制样式的方法!

导出Excel并下载,但无法定制样式的方法!

拿来的,望原创见谅!

public void EXCELDown(DataTable dt, string strFileName)        {            Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");            Response.AppendHeader("Content-Disposition", "attachment;filename=" + strFileName + ".xls");            string colHeaders = "", ls_item = "";            //定义表对象与行对象,同时用DataSet对其值进行初始化            DataRow[] myRow = dt.Select();//可以类似dt.Select("id>10")之形式达到数据筛选目的            int i = 0;            int cl = dt.Columns.Count;            //取得数据表各列标题,各标题之间以t分割,最后一个列标题后加回车符            for (i = 0; i < cl; i++)            {                if (i == (cl - 1))//最后一列,加n                {                    colHeaders += dt.Columns[i].Caption.ToString() + "\n";                }                else                {                    colHeaders += dt.Columns[i].Caption.ToString() + "\t";                }            }            Response.Write(colHeaders);            //向HTTP输出流中写入取得的数据信息            //逐行处理数据             foreach (DataRow row in myRow)            {                //当前行数据写入HTTP输出流,并且置空ls_item以便下行数据                  for (i = 0; i < cl; i++)                {                    if (i == (cl - 1))//最后一列,加n                    {                        ls_item += row[i].ToString() + "\n";                    }                    else                    {                        ls_item += row[i].ToString() + "\t";                    }                }                Response.Write(ls_item);                ls_item = "";            }            string aa = strFileName + ".xls";            string bb = Convert.ToBase64String(Encoding.UTF8.GetBytes(aa));            ;            byte[] cc = Convert.FromBase64String(bb);            string dd = Encoding.UTF8.GetString(cc);            Response.End();        }

 

导出Excel并下载,但无法定制样式的方法!