国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

手把手教你mvc導入excel_實用技巧

來源:懂視網 責編:小OO 時間:2020-11-27 20:10:12
文檔

手把手教你mvc導入excel_實用技巧

準備工作。1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113。2.NPOI學習;NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目。我用的工具是(vs2012+sql2014)。準備工作做完,我們開始進入主題。1.前端頁面,代碼。
推薦度:
導讀準備工作。1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113。2.NPOI學習;NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目。我用的工具是(vs2012+sql2014)。準備工作做完,我們開始進入主題。1.前端頁面,代碼。

這篇文章主要為大家詳細介紹了手把手教你mvc導入excel的方法,具有一定的參考價值,對mvc感興趣的小伙伴們可以參考一下

準備工作:

1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113

2.NPOI學習

NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目

我用的工具是(vs2012+sql2014)

準備工作做完,我們開始進入主題

1.前端頁面,代碼:

<p class="filebtn"> 
 @using (Html.BeginForm("importexcel", "foot", FormMethod.Post, new { enctype = "multipart/form-data" }))
 {
 <samp>請選擇要上傳的Excel文件:</samp>
 <span id="txt_Path"></span>
 <strong>選擇文件<input name="file" type="file" id="file" /></strong>@*
 @Html.AntiForgeryToken() //防止跨站請求偽造(CSRF:Cross-site request forgery)攻擊
 *@<input type="submit" id="ButtonUpload" value="提交" class="offer"/> 
 }
 </p>

2.接下來就是控制器

public class footController : Controller
 {
 //
 // GET: /foot/
 private static readonly String Folder = "/files";
 public ActionResult excel()
 {
 return View();
 }

 /// 導入excel文檔
 public ActionResult importexcel()
 {
 //1.接收客戶端傳過來的數據
 HttpPostedFileBase file = Request.Files["file"];
 if (file == null || file.ContentLength <= 0)
 {
 return Json("請選擇要上傳的Excel文件", JsonRequestBehavior.AllowGet);
 }
 //string filepath = Server.MapPath(Folder);
 //if (!Directory.Exists(filepath))
 //{
 // Directory.CreateDirectory(filepath);
 //}
 //var fileName = Path.Combine(filepath, Path.GetFileName(file.FileName));
 // file.SaveAs(fileName);
 //獲取一個streamfile對象,該對象指向一個上傳文件,準備讀取改文件的內容
 Stream streamfile = file.InputStream;
 DataTable dt = new DataTable();
 string FinName = Path.GetExtension(file.FileName);
 if (FinName != ".xls" && FinName != ".xlsx")
 {
 return Json("只能上傳Excel文檔",JsonRequestBehavior.AllowGet);
 }
 else
 {
 try
 {
 if (FinName == ".xls")
 {
 //創建一個webbook,對應一個Excel文件(用于xls文件導入類)
 HSSFWorkbook hssfworkbook = new HSSFWorkbook(streamfile);
 dt = excelDAL.ImExport(dt, hssfworkbook);
 }
 else
 {
 XSSFWorkbook hssfworkbook = new XSSFWorkbook(streamfile);
 dt = excelDAL.ImExport(dt, hssfworkbook);
 }
 return Json("",JsonRequestBehavior.AllowGet);
 }
 catch(Exception ex)
 {
 return Json("導入失敗 !"+ex.Message, JsonRequestBehavior.AllowGet);
 }
 }
 
 }

}

3.業務邏輯層[excelDAL]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NPOI;
using NPOI.SS.UserModel;
using NPOI.HSSF.UserModel;
using System.Data;
using NPOI.XSSF.UserModel;

namespace GJL.Compoent
{
 public class excelDAL
 {
 ///<summary>
 /// #region 兩種不同版本的操作excel
 /// 擴展名*.xlsx
 /// </summary>
 public static DataTable ImExport(DataTable dt, XSSFWorkbook hssfworkbook)
 {
 NPOI.SS.UserModel.ISheet sheet = hssfworkbook.GetSheetAt(0);
 System.Collections.IEnumerator rows = sheet.GetRowEnumerator();
 for (int j = 0; j < (sheet.GetRow(0).LastCellNum); j++)
 {
 dt.Columns.Add(sheet.GetRow(0).Cells[j].ToString());
 }
 while (rows.MoveNext())
 {
 XSSFRow row = (XSSFRow)rows.Current;
 DataRow dr = dt.NewRow();
 for (int i = 0; i < row.LastCellNum; i++)
 {
 NPOI.SS.UserModel.ICell cell = row.GetCell(i);
 if (cell == null)
 {
 dr[i] = null;
 }
 else
 {
 dr[i] = cell.ToString();
 }
 }
 dt.Rows.Add(dr);
 }
 dt.Rows.RemoveAt(0);
 if (dt!=null && dt.Rows.Count != 0)
 {
 for (int i = 0; i < dt.Rows.Count; i++)
 {
 string categary = dt.Rows[i]["頁面"].ToString();
 string fcategary = dt.Rows[i]["分類"].ToString();
 string fTitle = dt.Rows[i]["標題"].ToString();
 string fUrl = dt.Rows[i]["鏈接"].ToString();
 FooterDAL.Addfoot(categary, fcategary, fTitle, fUrl);
 }
 }
 return dt;
 }

 #region 兩種不同版本的操作excel
 ///<summary>
 /// 擴展名*.xls
 /// </summary>
 public static DataTable ImExport(DataTable dt, HSSFWorkbook hssfworkbook)
 {
 // 在webbook中添加一個sheet,對應Excel文件中的sheet,取出第一個工作表,索引是0 
 NPOI.SS.UserModel.ISheet sheet = hssfworkbook.GetSheetAt(0);
 System.Collections.IEnumerator rows = sheet.GetRowEnumerator();
 for (int j = 0; j < (sheet.GetRow(0).LastCellNum); j++)
 {
 dt.Columns.Add(sheet.GetRow(0).Cells[j].ToString());
 }
 while (rows.MoveNext())
 {
 HSSFRow row = (HSSFRow)rows.Current;
 DataRow dr = dt.NewRow();
 for (int i = 0; i < row.LastCellNum; i++)
 {
 NPOI.SS.UserModel.ICell cell = row.GetCell(i);
 if (cell == null)
 {
 dr[i] = null;
 }
 else 
 {
 dr[i] = cell.ToString();
 }
 }
 dt.Rows.Add(dr);
 }
 dt.Rows.RemoveAt(0);
 if (dt != null && dt.Rows.Count != 0)
 {
 for (int i = 0; i < dt.Rows.Count; i++)
 {
 string categary = dt.Rows[i]["頁面"].ToString();
 string fcategary = dt.Rows[i]["分類"].ToString();
 string fTitle = dt.Rows[i]["標題"].ToString();
 string fUrl = dt.Rows[i]["鏈接"].ToString();
 FooterDAL.Addfoot(categary, fcategary, fTitle, fUrl);
 }

 }
 return dt;
 }
 #endregion
 }
}
 public static partial class FooterDAL
 {
 /// <summary>
 /// 添加
 /// </summary>
 /// <param name="id"></param>
 /// <param name="catgary"></param>
 /// <param name="fcatgary"></param>
 /// <param name="fTitle"></param>
 /// <param name="fUrl"></param>
 /// <returns></returns>
 public static int Addfoot(string categary, string fcategary, string fTitle, string fUrl)
 {
 string sql = string.Format("insert into Foot (categary,fcategary,fTitle,fUrl)values(@categary,@fcategary,@fTitle,@fUrl)");
 SqlParameter[] parm = 
 { 
 new SqlParameter("@categary",categary)
 ,new SqlParameter("@fcategary",fcategary)
 ,new SqlParameter("@fTitle",fTitle)
 ,new SqlParameter("@fUrl",fUrl)
 };
 return new DBHelperSQL<Foot>(CommonTool.dbname).ExcuteSql(sql,parm); 
 }
}

//FooterDAL將datatable,就是excel里面的數據添加到sql數據庫

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

手把手教你mvc導入excel_實用技巧

準備工作。1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113。2.NPOI學習;NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目。我用的工具是(vs2012+sql2014)。準備工作做完,我們開始進入主題。1.前端頁面,代碼。
推薦度:
標簽: 技巧 excel 導入
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 亚洲91在线 | www.com黄色| 伊人精品视频在线观看 | 99精品视频在线观看免费播放 | 伊人久久大香线蕉综合爱婷婷 | 亚洲国产精久久久久久久 | 欧美精品日韩 | 亚洲国产欧美视频 | 国产综合成人久久大片91 | 国产一区二区精品久久凹凸 | 亚洲国产精品一区二区九九 | 自拍偷拍欧美亚洲 | 国产欧美久久久精品影院 | 国产亚洲人成a在线v网站 | 在线欧美日韩精品一区二区 | 国产欧美另类久久精品91 | 一区二区三区在线免费视频 | 日韩色网 | 亚洲欧美色欧另类欧 | 九九精品免视看国产成人 | 国产精品国产亚洲精品看不卡 | 国产美女白丝袜精品_a不卡 | 91视频高清 | 国产91在线 | 中文 | 九九热精品在线观看 | 久久精品免费一区二区视 | 欧洲亚洲一区 | 天堂va欧美ⅴa亚洲va一国产 | 国产中文在线 | 免费在线看a | 欧美日韩综合精品一区二区三区 | 日本精品一区二区三区在线观看 | 人成精品视频三区二区一区 | 伊人色播 | 亚洲欧美自拍一区 | 亚洲欧美日韩中文v在线 | 亚洲欧美另类自拍 | 日韩精品第一 | a男人的天堂久久a毛片 | 国产精品第| 欧美日韩精品一区二区三区视频在线 |