码迷,mamicode.com
首页 > Web开发 > 详细

Mvc导入

时间:2019-12-03 14:23:37      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:als   datatable   response   sub   soft   foreach   bool   last   success   

[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>

Mvc导入

标签:als   datatable   response   sub   soft   foreach   bool   last   success   

原文地址:https://www.cnblogs.com/l1999/p/11976396.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!