码迷,mamicode.com
首页 > 其他好文 > 详细

excel 导出 OpenXml

时间:2020-01-10 10:42:16      阅读:70      评论:0      收藏:0      [点我收藏+]

标签:XML   htm   templates   book   rtb   xlsx   art   detail   def   

        public ActionResult Export(string queryJson)
        {
            try
            {
                var list = Biz.GetDetailView(queryJson);
                if (list == null)
                    return Json(new { IsSuccess = false, Message = "无数据!" }, "text/html");

                var basePath = Server.MapPath("~/");
                var file = string.Format("{0:yyMMddHHmmssfff}.xlsx", DateTime.Now);

                System.IO.File.Copy(Path.Combine(basePath, "Templates", "详细明细.xlsx"), Path.Combine(basePath, "Export", file));

                using (SpreadsheetDocument document = SpreadsheetDocument.Open(Path.Combine(basePath, "Export", file), true))
                {
                    IEnumerable<Sheet> sheets = document.WorkbookPart.Workbook.Descendants<Sheet>();
                    if (sheets.Count() == 0)
                        TempData["Message"] = "文件中未包含指定数据!";
                    else
                    {
                        WorksheetPart sheet = (WorksheetPart)document.WorkbookPart.GetPartById(sheets.First().Id);
                        WorksheetWriter writer = new WorksheetWriter(document, sheet);
                        SpreadsheetStyle style = SpreadsheetStyle.GetDefault(document);

                        int rowIndex = 2;
                        for (int i = 0; i < list.Rows.Count; i++)
                        {
                            writer.PasteText(string.Format("A{0}", rowIndex), list.Rows[i]["IMEI"].ToString(), style);
                            writer.PasteText(string.Format("B{0}", rowIndex), list.Rows[i]["GOODSNAME"].ToString(), style);
                            writer.PasteText(string.Format("C{0}", rowIndex), list.Rows[i]["UNITNAME"].ToString(), style);
                            rowIndex++;
                        }
                        writer.Save();
                    }
                }
                return Json(new { IsSuccess = true, Message = "导出成功!", File = file }, "text/html");
            }
            catch (Exception ex)
            {
                return Json(new { IsSuccess = false, Message = ex.Message }, "text/html");
            }
        }

  

excel 导出 OpenXml

标签:XML   htm   templates   book   rtb   xlsx   art   detail   def   

原文地址:https://www.cnblogs.com/yyzyou/p/12174589.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!