[HttpPost] public void Import() { //獲取文件 HttpPostedFileBase fileBase = Request.Files["file"]; if(fileBase==null) { Response.Write(""); } //轉數據流 Stream ...
[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>