[HttpPost] public void Import() { //获取文件 HttpPostedFileBase fileBase = Request.Files["file"]; if(fileBase==null) { Response.Write(""); } //转数据流 Stream stream = fileBase.InputStream; IWorkbook workbook = null; if (Path.GetExtension(fileBase.FileName).ToLower().Equals(".xls")) { workbook = new HSSFWorkbook(stream); } //获取sheet ISheet sheet = workbook.GetSheetAt(0); //获取头 IRow row = sheet.GetRow(0); //定义datatable DataTable dt = new DataTable(); foreach (ICell item in row.Cells) { //循环添加表头 dt.Columns.Add(item.StringCellValue); } for (int i = 0; i <= sheet.LastRowNum; i++) { DataRow dr = dt.NewRow(); for (int j = 0; j < sheet.GetRow(i).Cells.Count; j++) { CellType cellType = sheet.GetRow(i).Cells[j].CellType; int index = sheet.GetRow(i).Cells[j].ColumnIndex; switch (cellType) { case CellType.Numeric:dr[index]=sheet.GetRow(i).Cells[j].NumericCellValue; break; case CellType.String: dr[index] = sheet.GetRow(i).Cells[j].StringCellValue; break; case CellType.Boolean: dr[index] = sheet.GetRow(i).Cells[j].BooleanCellValue; break; } } dt.Rows.Add(dr); } //sql拼接 try { dt.Columns.RemoveAt(0); foreach (DataRow item in dt.Rows) { string sql = $"inserrt into mess values("; foreach (object it in item.ItemArray) { sql += $"'{it}',"; } sql = sql.TrimEnd(','); sql += ")"; DB.ExecuteNonQuery(sql); } } catch (Exception) { throw; } }
//前台
<form action="/Default/Import" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file">
<input type="submit" name="name" class="btn btn-success btn-sm" value="导入">
</form>