NuGet安装NPOI第一个就是了。
//导入Excel内容
public ActionResult SubmitFile(HttpPostedFileBase file)
{
IWorkbook workbook = null;
// 2007版本
if (file.FileName.IndexOf(".xlsx") > 0)
{
workbook = new XSSFWorkbook(file.InputStream);
}
// 2003版本
else if (file.FileName.IndexOf(".xls") > 0)
{
workbook = new HSSFWorkbook(file.InputStream);
}
//获取第一个sheet
ISheet sheet = workbook.GetSheetAt(0);
//Execel第一行是标题,不是要导入数据库的数据
for (int i = 1; i <= sheet.LastRowNum; i++)
{
IRow row = sheet.GetRow(i);
//开始遍历单元格
for (int j = 0; j < row.LastCellNum; j++)
{
string ac = row.GetCell(j).ToString();
}
}
return Content("0");
}
//导出Excel内容
//创建工作薄
IWorkbook workbook = new XSSFWorkbook();
//创建Sheet
ISheet table = workbook.CreateSheet("Sheet1");
//创建行和单元格
IRow row = table.CreateRow(j);
row.CreateCell(i, CellType.String);
//给单元格赋值
row.Cells[0].SetCellValue("赋值");
//赋值完毕写入文件
using(FileStream fs = OpenWrite(path))
{
workbook.Write(fs);
}
注意:NPOI导入数据20列大概只能导出4W左右就会报内存溢出。