public class ExcleHandleer
{
//导出
public static void DataExportToExcel(string filename, DataTable dt, HttpResponse Response)
{
//using (FileStream file = new FileStream(HttpContext.Current.Request.PhysicalApplicationPath + filename + ".xls", FileMode.CreateNew, FileAccess.Write))
//{
HSSFWorkbook hssfworkbook = new HSSFWorkbook();
ISheet sheet = hssfworkbook.CreateSheet("Sheet1");
int rowIndex = 0;
//添加表头
IRow headRow = sheet.CreateRow(rowIndex);
for (int i = 0; i < dt.Columns.Count; i++)
{
headRow.CreateCell(i).SetCellValue(dt.Columns[i].ColumnName);
}
rowIndex++;
//添加数据
foreach (DataRow row in dt.Rows)
{
IRow dataRow = sheet.CreateRow(rowIndex);
foreach (DataColumn column in dt.Columns)
{
dataRow.CreateCell(column.Ordinal).SetCellValue(row[column].ToString());
}
rowIndex++;
}
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", string.Format("attachment;filename={0}", filename + ".xls"));
Response.Clear();
using (MemoryStream ms = new MemoryStream())
{
hssfworkbook.Write(ms);
Response.BinaryWrite(ms.GetBuffer());
}
Response.End();
//}
}
//调用方法
HttpResponse Resp;
Resp = Page.Response;
ExcleHandleer.DataExportToExcel(DateTime.Now.ToString(), dt, Resp);
//导入
/// <summary>
/// Npoi从Excel读取数据到DataTable