public string FileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";//文件名 以时间来命名文件名
在导出按钮的单击事件中写入如下代码
protected void Button1_Click(object sender, EventArgs e)
{
DataTable dtInfo = null;
DataSet ds = new DataSet();
StudentTjLogic logic = new StudentTjLogic();//通过查询语句得到的数据类库
dtInfo = logic.GetSchStuTj2(ddlArea.SelectedValue, this.ddlSchool.SelectedValue, this.txtTjYear.Text.Trim(), this.ddlTjStatus.SelectedValue, hidSQL.Value);//GetSchStuTj2此方法是获得查询所得的数据
if (dtInfo != null)
{
if (dtInfo.Rows.Count > 0)
{
importexcel3.ExportDsToXls(this.Page,FileName, dtInfo);//1表示市,区疾控,街道医疗全部数据
}
else
{
MessageBox.Show(this.Page, "系统提示:当前年份还没体检数据");
}
}
}
下面是导出到excel表代码、
public static void ExportDsToXls(Page page, string fileName, DataTable dt)
{
page.Response.Clear();
page.Response.Buffer = true;
page.Response.Charset = "GB2312";
//page.Response.Charset = "UTF-8";
page.Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName + System.DateTime.Now.ToString("_yyMMdd_hhmm") + ".xls");
page.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//设置输出流为简体中文
page.Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。
page.EnableViewState = false;
page.Response.Write(ExportTable(dt));
page.Response.End();
}
public static string ExportTable(DataTable dtinfo)
{
string data = "";
string ids = "";
//data = ds.DataSetName + "/n";
//data += tb.TableName + "/n";
data += "<table cellspacing=/"0/" cellpadding=/"5/" rules=/"all/" border=/"1/">";
//写出列名
data += "<tr style=/"font-weight: bold; white-space: nowrap;/">";
foreach (DataColumn column in dtinfo.Columns)
{
data += "<td>" + column.ColumnName + "</td>";
}
data += "</tr>";
//写出数据
foreach (DataRow row in dtinfo.Rows)
{
data += "<tr>";
foreach (DataColumn column in dtinfo.Columns)
{
if (column.ColumnName.Equals("学号"))
data += "<td style=/"vnd.ms-excel.numberformat:@/">" + row[column].ToString() + "</td>";
else
data += "<td>" + row[column].ToString() + "</td>";
}
data += "</tr>";
}
data += "</table>";
return data;
}