MVC5中利用NOPI导出EXCLE
生活随笔
收集整理的這篇文章主要介紹了
MVC5中利用NOPI导出EXCLE
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
MVC5中利用NOPI導出EXCLE //導出excle 設備效率public JsonResult Exporta(){var jser = new JavaScriptSerializer();string js1 = Request.Params["rows"].ToString();string js2 = Request.Params["columns"].ToString();DataTable dt1 = JsonToDataTable.JsToDataTab(js1);DataTable dt2 = JsonToDataTable.JsToDataTab(js2);//反序列化//var objList1 = jser.DeserializeObject(Request.Params["rows"]);//Object objList2 = jser.DeserializeObject(Request.Params["columns"]);//foreach (DataRow dr in dt2.Rows)//{// string value = dr["Title"].ToString();// DataColumn col = new DataColumn();// col.ColumnName = value;// col.DataType = System.Type.GetType("System.String");// dt1.Columns.Add(col);//}//創建Excel文件的對象NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();HSSFSheet sheet = book.CreateSheet("Sheet1");//給sheet1添加第一行的頭部標題HSSFRow row1 = sheet.CreateRow(0);int i = -1;foreach (DataRow dr in dt2.Rows){i++;string value = dr["title"].ToString();row1.CreateCell(i).SetCellValue(value);}if (dt1 != null){//將數據逐步寫入sheet1各個行for (int j = 0; j < dt1.Rows.Count; j++){HSSFRow rowtemp = sheet.CreateRow(j + 1);rowtemp.CreateCell(0).SetCellValue(dt1.Rows[j]["WorkShopName"].ToString());rowtemp.CreateCell(1).SetCellValue(dt1.Rows[j]["OpenRate"].ToString());rowtemp.CreateCell(2).SetCellValue(dt1.Rows[j]["RunRate"].ToString());rowtemp.CreateCell(3).SetCellValue(dt1.Rows[j]["UOE2"].ToString());rowtemp.CreateCell(4).SetCellValue(dt1.Rows[j]["UOE3"].ToString());rowtemp.CreateCell(5).SetCellValue(dt1.Rows[j]["UOE4"].ToString());}}// 寫入到客戶端 // 寫入到客戶端 if (Directory.Exists(Server.MapPath("~/ExportFiles/")) == false)//如果不存在就創建file文件夾{Directory.CreateDirectory(Server.MapPath("~~/ExportFiles/"));}//判斷文件的存在if (System.IO.File.Exists(Server.MapPath("~/ExportFiles/設備效率.xls"))){Response.Write("Yes");//存在文件}else{Response.Write("No");//不存在文件System.IO.File.Create(Server.MapPath("~/ExportFiles/設備效率.xls")).Close();//創建該文件}try{FileStream fs = new FileStream(Server.MapPath("~/ExportFiles/" + "設備效率.xls"), FileMode.Create);book.Write(fs);fs.Seek(0, SeekOrigin.Begin);fs.Flush();fs.Close();}catch (Exception){throw;}//return File(fs, "application/vnd.ms-excel", "1.xls");return Json(new { mes = "", state = 1 });}
posted on 2016-07-15 15:20 坐在海邊看星星 閱讀(...) 評論(...) 編輯 收藏
轉載于:https://www.cnblogs.com/zemax/p/5673716.html
總結
以上是生活随笔為你收集整理的MVC5中利用NOPI导出EXCLE的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql字节对齐_结构体字节对齐(转)
- 下一篇: 高斯计传感器使用的霍尔传感器原理