<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答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

        來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 22:35:13
        文檔

        手把手教你mvc導入excel

        手把手教你mvc導入excel:準備工作: 1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113 2.NPOI學習 NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目 我用的工具是(vs2012+sql2014) 準
        推薦度:
        導讀手把手教你mvc導入excel:準備工作: 1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113 2.NPOI學習 NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目 我用的工具是(vs2012+sql2014) 準

        準備工作:

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

        2.NPOI學習

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

        我用的工具是(vs2012+sql2014)

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

        1.前端頁面,代碼:

        <div 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"/> 
         }
         </div>
        

        2.接下來就是控制器

        public class footController : Controller
         {
         //
         // GET: /foot/
         private static readonly String Folder = "/files";
         public ActionResult excel()
         {
         return View();
         }
        
         /// 導入excel文檔
         public ActionResult importexcel()
         {
         //1.接收客戶端傳過來的數(shù)據(jù)
         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對象,該對象指向一個上傳文件,準備讀取改文件的內(nèi)容
         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")
         {
         //創(chuàng)建一個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.業(yè)務邏輯層[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里面的數(shù)據(jù)添加到sql數(shù)據(jù)庫

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

        文檔

        手把手教你mvc導入excel

        手把手教你mvc導入excel:準備工作: 1.在項目中添加對NPOI的引用,NPOI下載地址:http://npoi.codeplex.com/releases/view/38113 2.NPOI學習 NPOI下載,里面有五個dll,需要引用到你的項目,我這邊用的mvc4+三層的方式架構的項目 我用的工具是(vs2012+sql2014) 準
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产高潮流白浆喷水免费A片 | 亚洲精品伦理熟女国产一区二区| 免费VA在线观看无码| 成**人免费一级毛片| 在线观看亚洲AV日韩AV| 久草免费在线观看视频| 亚洲理论片中文字幕电影| 91九色老熟女免费资源站| 噜噜噜亚洲色成人网站∨| 国产福利视精品永久免费| 亚洲国产成人va在线观看网址| 国产精品免费观看| 2020天堂在线亚洲精品专区| 成人免费无码大片a毛片软件| 亚洲高清视频在线| 国产无遮挡吃胸膜奶免费看视频| 国产天堂亚洲精品| 久久久久亚洲精品中文字幕| 免费福利在线视频| 亚洲精品成人网站在线播放| 91在线视频免费看| 亚洲乱码中文字幕在线| 国产成人无码免费视频97 | 亚洲精品无码久久久久| 日韩电影免费在线观看网站| 亚洲精品无码久久毛片波多野吉衣| 无人在线直播免费观看| 亚洲av乱码中文一区二区三区| 亚洲女人被黑人巨大进入| 免费精品一区二区三区第35| 国产成人精品日本亚洲专| 亚洲福利中文字幕在线网址| 在线播放免费人成毛片乱码| 亚洲美女视频一区| 国产精品麻豆免费版| 色播在线永久免费视频网站| 亚洲国产日韩精品| 亚洲精品二区国产综合野狼 | 亚洲乱码中文字幕在线| 亚洲中文字幕无码爆乳AV| 麻豆视频免费播放|