把Datatable导出为Excel
protected void ExportDataTableToExcel(DataTable dt, string ExcelFileName)
{
//DataTable dt = GetData();
string attachment = "attachment; filename=" + ExcelFileName + ".xls";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/vnd.ms-excel";
string tab = "";
foreach (DataColumn dc in dt.Columns)
{
Response.Write(tab + dc.ColumnName);
tab = "\t";
}
Response.Write("\n");
int i;
foreach (DataRow dr in dt.Rows)
{
tab = "";
for (i = 0; i < dt.Columns.Count; i++)
{
Response.Write(tab + dr[i].ToString());
tab = "\t";
}
Response.Write("\n");
}
Response.End();
}
---------------------
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(sqlText, ConfigurationManager.ConnectionStrings["xxxConnectionString"].ConnectionString);
sda.SelectCommand.CommandTimeout = 99999;
sda.Fill(dt);
foreach (DataColumn c in dt.Columns)
{
string cn = c.ColumnName;
for (int i = cn.IndexOf("_"); i > 0; i = cn.IndexOf("_"))
{
string chr = cn.Substring(i + 1, 1);
cn = cn.Replace("_" + chr, chr.ToUpper());
}
cn = Regex.Replace(Regex.Replace(cn.Substring(0, 1).ToUpper() + cn.Substring(1), "(?<=[a-z])[A-Z]", " $0"), "([A-Z])([A-Z][a-z][a-z])", "$1 $2");
c.ColumnName = cn;
}
ExportDataTableToExcel(dt, Session["Table"].ToString());
-----------------------------------