public class DataTableToExcel
{
/// <summary>
/// DataSet中数据导出到Excel
/// </summary>
/// <param name="gridView">DataSet对象</param>
/// <param name="isShowExcle">是否显示Excel界面</param>
/// <returns></returns>
//导出Excel
public static void ExportExcel(System.Data.DataTable dt)
{
Excel.Application excelKccx = new Excel.Application();
excelKccx.Workbooks.Add(true);
for (int i = 0; i < dt.Columns.Count; i++)//取字段名
{
excelKccx.Cells[1, i + 1] = dt.Columns[i].ColumnName.ToString();
}
for (int i = 0; i < dt.Rows.Count; i++)//取记录值
{
for (int j = 0; j < dt.Columns.Count; j++)
{
excelKccx.Cells[i + 2, j + 1] = dt.Rows[i][j].ToString();
}
}
excelKccx.Visible = true;
}
}
调用方法:
DataSet ds=null;
ds = db.getDataSet(sql);
DataTable dt = ds.Tables[0];
DataTableToExcel.ExportExcel(dt);
一种方法是把当前页面或HTML元素输出为excel文件,这种方法不标准。
另一种用第三方组件来操作,这种方法稍麻烦。