C#使用NPOI 导出Excel

C#使用NPOI 导出ExcelC#使用NPOI导出Excel首先需要添加NPOI的引用//创建Excel文件的对象HSSFWorkbookbook=newHSSFWorkbook();//添加一个sheetIRowrow2=sheet1.CreateRow(0);row2.CreateCell(0).SetCellValue(“序号”);row2.CreateCell(1).SetC

大家好,又见面了,我是你们的朋友全栈君。

C#使用NPOI 导出Excel

首先需要添加NPOI的引用

 //创建Excel文件的对象
            HSSFWorkbook book = new HSSFWorkbook();
            //添加一个sheet
            IRow row2 = sheet1.CreateRow(0);
            row2.CreateCell(0).SetCellValue("序号");
            row2.CreateCell(1).SetCellValue("作业许可单号");
            row2.CreateCell(2).SetCellValue("申请人");
            row2.CreateCell(3).SetCellValue("申请单位");
            row2.CreateCell(4).SetCellValue("作业日期(起)");
            row2.CreateCell(5).SetCellValue("作业日期(讫)");
            row2.CreateCell(6).SetCellValue("主承揽商");
            row2.CreateCell(7).SetCellValue("次承揽商");
            row2.CreateCell(8).SetCellValue("工作内容");
            row2.CreateCell(9).SetCellValue("工作人员");
            row2.CreateCell(10).SetCellValue("人数(仅供参考)");
            if (list != null && list.Count > 0)
            { 
   
                for (var i = 0; i < list.Count; i++)
                { 
   
                    IRow rowtemp2 = sheet1.CreateRow(i + 1);
                    //非表头
                    rowtemp2.CreateCell(0).SetCellValue(i + 1);//序号
                    rowtemp2.CreateCell(1).SetCellValue(list[i].ApplyNo);
                    rowtemp2.CreateCell(2).SetCellValue(list[i].ApplyInfo);
                    rowtemp2.CreateCell(3).SetCellValue(list[i].ApplyDept);
                    rowtemp2.CreateCell(4).SetCellValue(list[i].oper_from_dt.Substring(0, 10));
                    rowtemp2.CreateCell(5).SetCellValue(list[i].oper_to_dt.Substring(0, 10));
                    rowtemp2.CreateCell(6).SetCellValue(list[i].guard_name);
                    rowtemp2.CreateCell(7).SetCellValue(list[i].guard_send_name);
                    rowtemp2.CreateCell(8).SetCellValue(list[i].oper_content);
                    var guardWorker=list[i].GuardWorker.TrimStart(',').TrimEnd(',');
                    rowtemp2.CreateCell(9).SetCellValue(guardWorker);
                    rowtemp2.CreateCell(10).SetCellValue(Split(guardWorker).Length);
                }
            }
               MemoryStream ms = new MemoryStream();
            book.Write(ms);
            ms.Seek(0, SeekOrigin.Begin);
          
           
  1. 当为Webform项目时
  //输出Excel
            string filename = "紧急入场统计" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";
            Response.Clear();
            Response.ContentType = "application/vnd.ms-excel";
            Response.AddHeader("Content-Length", ms.Length.ToString());
            Response.AddHeader("Content-Disposition", string.Format("attachment;filename={0}", Server.UrlEncode(filename)));
            Response.BinaryWrite(ms.GetBuffer());
            Response.Flush();
            Response.End();
  1. 当为MVC项目时

            MemoryStream ms = new MemoryStream();
            book.Write(ms);
            ms.Seek(0, SeekOrigin.Begin);
            return File(ms, "application/vnd.ms-excel", survey.Name + DateTime.Now.ToString("yyyyMMddHHmmssffff") + ".xls");
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150144.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java volatile关键字的作用_java volatile关键字作用及使用场景详解

    java volatile关键字的作用_java volatile关键字作用及使用场景详解1.volatile关键字的作用:保证了变量的可见性(visibility)。被volatile关键字修饰的变量,如果值发生了变更,其他线程立马可见,避免出现脏读的现象。如以下代码片段,isShutDown被置为true后,doWork方法仍有执行。如用volatile修饰isShutDown变量,可避免此问题。publicclassVolatileTest3{staticclassW…

  • java栈的实现_java技术栈

    java栈的实现_java技术栈一.数组实现的栈,能存储任意类型的数据。/***java使用数组来实现栈,能存储任意数据**@authorLinging*@date2019/2/10**/importjava.lang.reflect.Array;publicclassArrayStack&amp;lt;T&amp;gt;{ privatefinalstaticintDEFA…

  • 【学习强化学习】十三、模仿学习介绍[通俗易懂]

    【学习强化学习】十三、模仿学习介绍[通俗易懂]文章目录参考资料1.模仿学习概述2.行为克隆2.1行为克隆缺点缺点1:观测非常有限缺点2:机器会完全模仿专家的行为缺点3:训练数据跟测试数据不匹配2.逆强化学习2.1概述2.2奖励函数2.2IRLvsGAN3.第三人称视角模仿学习4.练习4.1keywords参考资料https://datawhalechina.github.io/easy-rl/#/chapter11/chapter111.模仿学习概述模仿学习(imitationlearning,IL)又叫做示范学习(

  • 正在接入或无法接入认证服务器(服务器未运行怎么解决)

    迷你版云服务器未启动内容精选换一换企业主机安全(HostSecurityService,HSS)是提升服务器整体安全性的服务,通过主机管理、风险防御、入侵检测、安全运营、网页防篡改功能,可全面识别并管理云服务器中的信息资产,实时监测云服务器中的风险,降低服务器被入侵的风险。使用主机安全需要在云服务器中安装Agent。安装Agent后,您的云服务器将受到HSS云端防护中企业主机安全(Host…

  • linux任务管理器_redhat和centos的区别

    linux任务管理器_redhat和centos的区别本文将向你介绍RedFlagDesktopLinux10(红旗Linux10)的新功能及新特性,让你对RedFlag的桌面版创新有一个了解,以下介绍6点和其他Linux发行版有着与众不同的地方。想获取该版本请看想要红旗桌面操作系统10(RedFlagDesktopLinux10)的请联系红旗官方一文。红旗Linux10的新功能/新特性介绍1、全新的UI设计全新的图标集和彩色表情包让用…

  • 【数据库】谈谈group by[通俗易懂]

    【数据库】谈谈group by[通俗易懂]【数据库】谈谈group by

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号