分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

ASP.NET MVC编程入门--Excel上传

发布时间:2023-09-06 01:14责任编辑:熊小新关键词:.NETMVC

参考博客:ASP.NET MVC下使用文件上传

参考博客:NPOI使用手册

参考博客:ASP.Net MVC利用NPOI导入导出Excel

参考博客:C# NPOI 导入与导出Excel文档 兼容xlsx, xls

文件上传代码块

 ???????#region EXCEL上传 ???????/// <summary> ???????/// EXCEL上传 ???????/// </summary> ???????/// <param name="fileData"></param> ???????/// <returns></returns> ???????[AcceptVerbs(HttpVerbs.Post)] ???????public JsonResult ExcelUpload(HttpPostedFileBase fileData) ???????{ ???????????json.HttpResult result = new json.HttpResult(); ???????????if (fileData == null) ???????????{ ???????????????result.state = json.ResultType.error.ToString(); ???????????????result.message = ""; ???????????????return Json(new { result }, JsonRequestBehavior.AllowGet); ???????????} ???????????try ???????????{ ???????????????// 文件上传后的保存路径 ???????????????string filePath = Request.ApplicationPath + "UpLoad/Excel/"; ???????????????if (CreateFilePath(filePath)) ???????????????{ ???????????????????string fileName = Path.GetFileName(fileData.FileName);// 原始文件名称 ???????????????????string fileExtension = Path.GetExtension(fileName); // 文件扩展名 ???????????????????string saveName = Guid.NewGuid().ToString("N") + fileExtension; // 保存文件名称 ???????????????????string excelPath = filePath + saveName; ???????????????????fileData.SaveAs(filePath + saveName); ???????????????????DataTable dt = GetExcelData(excelPath); ???????????????????bool re = bll.ProductManager.AddDataTable(dt); ???????????????????common.SysLog.InsertListLog(common.SysLog.PRODUCT_MODULE, common.SysLog.OPERATE_INSERT_LIST, dt.Rows.Count); ???????????????????result.state = json.ResultType.success.ToString(); ???????????????????result.message = json.ResultMessage.SUCCESS; ???????????????} ???????????????????????} ???????????catch (Exception ex) ???????????{ ???????????????result.state = json.ResultType.error.ToString(); ???????????????result.message = ex.Message; ???????????} ???????????return Json(new { result }, JsonRequestBehavior.AllowGet); ???????} ???????#endregion

组建DataTable代码块

 ???????#region 获取Excel DataTable ???????/// <summary> ???????/// 获取Excel DataTable ???????/// </summary> ???????/// <param name="filePath"></param> ???????/// <returns></returns> ???????private DataTable GetExcelData(string filePath) ???????{ ???????????DataTable dt = new DataTable(); ???????????IWorkbook workbook; ???????????string fileExt = Path.GetExtension(filePath).ToLower(); ???????????using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read)) ???????????{ ???????????????//XSSFWorkbook 适用XLSX格式,HSSFWorkbook 适用XLS格式 ???????????????if (fileExt == ".xlsx") ???????????????{ ???????????????????workbook = new XSSFWorkbook(fs); ???????????????} ???????????????else if (fileExt == ".xls") ???????????????{ ???????????????????workbook = new HSSFWorkbook(fs); ???????????????} ???????????????else ???????????????{ ???????????????????return null; ???????????????} ???????????} ???????????ISheet sheet = workbook.GetSheetAt(0); ???????????IRow headerRow = sheet.GetRow(sheet.FirstRowNum);//第一行为标题行       /***************************************/return dt; ???????} ???????#endregion

ASP.NET MVC编程入门--Excel上传

原文地址:http://www.cnblogs.com/bmbh/p/7567748.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved