日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

asp.net Mvc 使用NPOI导出Excel文件

發(fā)布時(shí)間:2024/8/26 asp.net 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 asp.net Mvc 使用NPOI导出Excel文件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.新建MVC項(xiàng)目,新建控制器、視圖

?添加控制器:

?添加視圖(將使用布局頁前面的復(fù)選框里的勾勾去掉)

2.在Models里新建一個(gè)類

public class Shop{/// <summary>/// 編號(hào)/// </summary>public int Number { get; set; }/// <summary>/// 商品名稱/// </summary>public string ShopName { get; set; }/// <summary>/// 商品價(jià)格/// </summary>public double Price { get; set; }/// <summary>/// 商品種類/// </summary>public string ShopType { get; set; }/// <summary>/// 時(shí)間/// </summary>public DateTime Date { get; set; }/// <summary>/// 添加數(shù)據(jù)/// </summary>/// <returns></returns>public List<Shop> AddShop(){var shops = new List<Shop>();shops.Add(new Shop() { Number = 1001, ShopName = "小熊餅干", Price = 9.9, ShopType = "零食", Date = DateTime.Now });shops.Add(new Shop() { Number = 1002, ShopName = "旺仔QQ糖", Price = 5.6, ShopType = "零食", Date = DateTime.Now });shops.Add(new Shop() { Number = 1001, ShopName = "奧利奧餅干", Price = 15.5, ShopType = "零食", Date = DateTime.Now });return shops;}}

3.在控制器里新增一個(gè)方法,編寫導(dǎo)出的代碼

public FileResult ExportData(){Shop shop = new Shop();//獲得數(shù)據(jù)var Data=shop.AddShop();//創(chuàng)建一個(gè)新的excel文件HSSFWorkbook book = new HSSFWorkbook();//創(chuàng)建一個(gè)工作區(qū)ISheet sheet = book.CreateSheet("sheet1");//創(chuàng)建一行 也就是在sheet1這個(gè)工作區(qū)創(chuàng)建一行 在NPOI中只有先創(chuàng)建才能后使用IRow row = sheet.CreateRow(0);for (int i = 0; i < 5; i++){//設(shè)置單元格的寬度sheet.SetColumnWidth(i, 16 * 156);}sheet.SetColumnWidth(4, 30 * 156);sheet.SetColumnWidth(1, 21 * 156);//定義一個(gè)樣式,迎來設(shè)置樣式屬性ICellStyle setborder = book.CreateCellStyle();//設(shè)置單元格上下左右邊框線 但是不包括最外面的一層setborder.BorderLeft = BorderStyle.Thin;setborder.BorderRight = BorderStyle.Thin;setborder.BorderBottom = BorderStyle.Thin;setborder.BorderTop = BorderStyle.Thin;//文字水平和垂直對齊方式setborder.VerticalAlignment = VerticalAlignment.Center;//垂直居中setborder.Alignment = HorizontalAlignment.Center;//水平居中setborder.WrapText = true;//自動(dòng)換行//再定義一個(gè)樣式,用來設(shè)置最上面標(biāo)題行的樣式ICellStyle setborderdeth = book.CreateCellStyle();//設(shè)置單元格上下左右邊框線 但是不包括最外面的一層setborderdeth.BorderLeft = BorderStyle.Thin;setborderdeth.BorderRight = BorderStyle.Thin;setborderdeth.BorderBottom = BorderStyle.Thin;setborderdeth.BorderTop = BorderStyle.Thin;//定義一個(gè)字體樣式IFont font = book.CreateFont();//將字體設(shè)為紅色font.Color = IndexedColors.Red.Index;//font.FontHeightInPoints = 17;//將定義的font樣式給到setborderdeth樣式中 setborderdeth.SetFont(font);//文字水平和垂直對齊方式setborderdeth.VerticalAlignment = VerticalAlignment.Center;//垂直居中setborderdeth.Alignment = HorizontalAlignment.Center;//水平居中setborderdeth.WrapText = true; //自動(dòng)換行//設(shè)置第一行單元格的高度為25row.HeightInPoints = 25;//設(shè)置單元格的值row.CreateCell(0).SetCellValue("編號(hào)");//將style屬性給到這個(gè)單元格row.GetCell(0).CellStyle = setborderdeth;row.CreateCell(1).SetCellValue("商品名稱");row.GetCell(1).CellStyle = setborderdeth;row.CreateCell(2).SetCellValue("商品價(jià)格");row.GetCell(2).CellStyle = setborderdeth;row.CreateCell(3).SetCellValue("商品種類");row.GetCell(3).CellStyle = setborderdeth;row.CreateCell(4).SetCellValue("日期");row.GetCell(4).CellStyle = setborderdeth;//循環(huán)的導(dǎo)出到excel的每一行for (int i = 0; i < Data.Count; i++){//每循環(huán)一次,就新增一行 索引從0開始 所以第一次循環(huán)CreateRow(1) 前面已經(jīng)創(chuàng)建了標(biāo)題行為0IRow row1 = sheet.CreateRow(i + 1);row1.HeightInPoints = 21;//給新加的這一行創(chuàng)建第一個(gè)單元格,并且給這第一個(gè)單元格設(shè)置值 以此類推...row1.CreateCell(0).SetCellValue(Convert.ToString(Data[i].Number));//先獲取這一行的第一個(gè)單元格,再給其設(shè)置樣式屬性 以此類推...row1.GetCell(0).CellStyle = setborder;row1.CreateCell(1).SetCellValue(Data[i].ShopName);row1.GetCell(1).CellStyle = setborder;row1.CreateCell(2).SetCellValue(Convert.ToString(Data[i].Price));row1.GetCell(2).CellStyle = setborder;row1.CreateCell(3).SetCellValue(Data[i].ShopType);row1.GetCell(3).CellStyle = setborder;row1.CreateCell(4).SetCellValue(Convert.ToString(Data[i].Date));row1.GetCell(4).CellStyle = setborder;}System.IO.MemoryStream ms = new System.IO.MemoryStream();book.Write(ms);ms.Seek(0, SeekOrigin.Begin);DateTime dttime = DateTime.Now;string datetime = dttime.ToString("yyyy-MM-dd");string filename = "報(bào)表導(dǎo)出" + datetime + ".xls";return File(ms, "application/vns.ms-excel", filename);}

4.視圖頁引入腳本文件及編寫相應(yīng)代碼

@{Layout = null; }<!DOCTYPE html><html> <head><meta name="viewport" content="width=device-width" /><title>Index</title><link href="http://localhost:64014/bootstrap/css/bootstrap.min.css" rel="stylesheet" /><script src="http://localhost:64014/js/jquery-3.4.0.min.js"></script><script src="http://localhost:64014/bootstrap/js/bootstrap.min.js"></script><style type="text/css">* {margin: 0px;padding: 0px;}button {margin-top: 5px;margin-left: 5px;}</style><script type="text/javascript">function exports() {//用ajax調(diào)用導(dǎo)出方法 $.ajax({type: 'GET',url: '/Export/ExportData',success: function () {//注:Ajax直接調(diào)用后臺(tái)的下載方法是導(dǎo)出不了文件的,原因是ajax無法接收后臺(tái)的文件流,所以,需要再次用window.location=url或者window.open(url)下載window.location = '/Export/ExportData'}})}</script> </head> <body><div>@*按鈕用bootstrap渲染一下,會(huì)好看一些(*^_^*)*@<button class="btn btn-info" style="width:90px" οnclick="exports()">導(dǎo)出</button></div> </body> </html>

5.效果:

?

轉(zhuǎn)載于:https://www.cnblogs.com/zhangnever/p/11074097.html

總結(jié)

以上是生活随笔為你收集整理的asp.net Mvc 使用NPOI导出Excel文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 少妇饥渴难耐 | 欧美一区二区三区激情视频 | 亚洲人xxxx| 亚洲大片免费 | 日韩黄色免费网站 | 久久久久久久伊人 | 超级碰在线观看 | 亚洲伦理自拍 | 一区二区三区视频网站 | 成人在线免费电影 | 日日噜噜噜 | 女人的毛片 | 黄色一级视频免费 | 人人看人人干 | 国产成人一区 | 亚洲第99页| 色偷偷视频 | 一区二区三区四区影院 | 国产嘿咻| 亚州欧美在线 | 日本亚洲精品 | 熟妇人妻久久中文字幕 | 神马久久久久 | 久久久久久久久久久久久久久久久 | 激情视频久久 | av第一区 | 在线视频观看你懂得 | 一级黄色片网址 | 少妇一级淫片日本 | 亚洲我射av | av一级在线观看 | 亚洲精品一区二区在线 | 久操亚洲 | 美攻壮受大胸奶汁(高h) | 久久久久99人妻一区二区三区 | 久久精品视频一区 | 在线看一区二区 | 一区二区三区免费播放 | 国产av无码专区亚洲av麻豆 | 国产一在线 | 日韩资源| 国内外成人在线视频 | 欧美cccc极品丰满hd | 6080电视影片在线观看 | av日韩一区二区 | av狠狠操| 无遮挡的裸体按摩的视频 | 成人蜜桃av | 最新地址在线观看 | 男女激情在线观看 | 夜夜操狠狠操 | av青青草 | 国产日韩一区二区在线 | 国产中文在线 | 色综合视频在线 | 成人在线免费网址 | 久久久老司机 | 自拍偷拍1| 日本αv| 亚洲欧美日韩中文字幕在线观看 | 狠狠狠狠干 | 日韩欧美aⅴ综合网站发布 国产成人一区二区三区小说 | 亚洲国产精品二区 | 四虎一国产精品一区二区影院 | 久久久国产精品久久久 | 香蕉av在线播放 | 日韩av麻豆 | 亚洲一区二区天堂 | 人人操日日干 | 天天天干干干 | 99视频免费在线观看 | 国产在线天堂 | 肉丝袜脚交视频一区二区 | 无码人妻丰满熟妇啪啪欧美 | 成年人免费看的视频 | 激情网站免费 | 少妇高潮久久久久久潘金莲 | 天天插夜夜 | 欧美性俱乐部 | 欧美成人三级精品 | 成人www.| 中文字幕一区二区三区夫目前犯 | 色导航| 在线一级视频 | 国产美女作爱视频 | 日产国产亚洲精品系列 | 日本强好片久久久久久aaa | 亚洲免费小视频 | 国产精品搬运 | 中文字字幕一区二区三区四区五区 | 欧美亚洲在线观看 | ts人妖另类精品视频系列 | 专干老肥女人88av | 欧美另类z0z变态 | 黑人巨大精品一区二区在线 | 欧美极品jizzhd欧美爆 | 国产精品成久久久久三级 | 中文字幕一区二区三区免费视频 | 久久少妇av|