C#中用NPOI的excel导出
//机构表导出
private static List<User2> amininf = new BLL.Bll().GetUser2s(); //定义数据源导出对象
#region 导出数据
public FileResult setfill()
{
if (Admininfo != null)
{
if (Admininfo.Count > 0)
{
//创建EXCEL文件的对象
NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
//添加一个sheet工作表
NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("sheet1");
//获取list数据
List<User2> list = new Bll().GetUser2s();
//给sheet1添加第一行的头部标题
NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow(0); //0表示当前的索引
//创建标题的内容
row1.CreateCell(0).SetCellValue("序号");
row1.CreateCell(1).SetCellValue("ID");
row1.CreateCell(2).SetCellValue("姓名");
row1.CreateCell(3).SetCellValue("法人");
row1.CreateCell(4).SetCellValue("资金");
//将数据逐步写入各个列中
for (int i = 0; i < list.Count; i++)
{
NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i + 1);
rowtemp.CreateCell(0).SetCellValue(list[i].xh.ToString());
rowtemp.CreateCell(1).SetCellValue(list[i].Id.ToString());
rowtemp.CreateCell(2).SetCellValue(list[i].Name.ToString());
rowtemp.CreateCell(3).SetCellValue(list[i].Daibiao.ToString());
rowtemp.CreateCell(4).SetCellValue(list[i].Zhijin.ToString());
}
//写入到客户端
System.IO.MemoryStream ms = new MemoryStream();
//输入到工作簿中
book.Write(ms);
//开始写入数据流
ms.Seek(0, SeekOrigin.Begin);
return File(ms, "application/vnd.ms-excel", "机构信息表.xlsx");
}
else
{
System.IO.MemoryStream ms = new System.IO.MemoryStream();
return File(ms, "application/Response.write", "无数据导出");
}
}
else
{
MemoryStream ms = new MemoryStream();
return File(ms, "application/Response.write", "无数据导出");
}
}
--------------------------------------视图代码
<a href="/Home/setfill" style="color:#1abd9b">Excel导出</a>
---------------------------------------控制器引用(不只导出的)
using Model;
using BLL;
using System.IO;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Data;
using Webdiyer.WebControls.Mvc;
using NPOI;
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
C#中用NPOI的excel导出的更多相关文章
- 并发编程概述 委托(delegate) 事件(event) .net core 2.0 event bus 一个简单的基于内存事件总线实现 .net core 基于NPOI 的excel导出类,支持自定义导出哪些字段 基于Ace Admin 的菜单栏实现 第五节:SignalR大杂烩(与MVC融合、全局的几个配置、跨域的应用、C/S程序充当Client和Server)
并发编程概述 前言 说实话,在我软件开发的头两年几乎不考虑并发编程,请求与响应把业务逻辑尽快完成一个星期的任务能两天完成绝不拖三天(剩下时间各种浪),根本不会考虑性能问题(能接受范围内).但随着工 ...
- C# 实现NPOI的Excel导出
技术点: 1.自定义attribute属性 2.通过反射取类及其属性的attribute属性值 3.NPOI包常用属性及方法(我也仅仅知道用到过的,陌生的要么见名知意,要么百度查) 实现功能点: Li ...
- PowerBuilder中调用NPOI进行Excel导出格式设置示例
// 功能 :新建excel带边框的单元格,格式为数字并显示为美元货币 // 参数 :ai_row,行号:ai_col,列号 // 返回值 :true/false // 作者 :潮崖之飔 // 日期 ...
- .NET Excel导出方法及其常见问题详解
摘要:.NET Excel导出方法及其常见问题详解. 一.Excel导出的实现方法 在.net 程序开发中,对于Excel文件的导出我们一共有三种导出方式: 利用文件输出流进行读写操作 这种方式的导出 ...
- MVC中用NPOI导出Excel相关问题
情形1:可以直接带参数 前端页面: @.ActionLink("导出Excel", "DownLoadExcel", new { 参数名= '参数值' }, n ...
- NPOI操作EXCEL(四)——反射机制批量导出excel文件
前面我们已经实现了反射机制进行excel表格数据的解析,既然有上传就得有下载,我们再来写一个通用的导出方法,利用反射机制实现对系统所有数据列表的筛选结果导出excel功能. 我们来构想一下这样一个画面 ...
- asp.net mvc4 easyui datagrid 增删改查分页 导出 先上传后导入 NPOI批量导入 导出EXCEL
效果图 数据库代码 create database CardManage use CardManage create table CardManage ( ID ,) primary key, use ...
- NPOI实现Excel导入导出
NPOI实现Excel的导入导出,踩坑若干. Cyan是博主[Soar360]自2014年以来开始编写整理的工具组件,用于解决现实工作中常用且与业务逻辑无关的问题. 什么是NPOI? NPOI 是 P ...
- npoi实现数据导出Excel
npoi .NET第三方的Office功能组件. 链接地址 http://npoi.codeplex.com/ 引用命名空间 using NPOI.HSSF.UserModel; using ...
随机推荐
- C#ImageList和ListView的使用
一.ImageList ImageList组件,又称为图片存储组件,它主要用于存储图片资源,然后在控件上显示出来,这样就简化了对图片的管理.ImageList组件的主要属性是Images,它包含关联 ...
- 蓝桥杯2018 B组 第九题
#include <bits/stdc++.h> #define M 1005 using namespace std; int n; char map1[M][M]; bool vis[ ...
- linux iptables详解(转)
概述 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成 ...
- 对字符串md5加密
public String getMD5(String str) { try { // 生成一个MD5加密计算摘要 MessageDigest md = MessageDigest.getInstan ...
- bash vim等常用命令
生成的txt一不小心带了./,用vim: :%s/\.\/single/single #%s/xxx/yyy/g是全文本替换,这里用\将特殊字符.和/转换成普通字符 结果还不错: ---------- ...
- Kubernetes有状态应用管理——PetSet
目录贴:Kubernetes学习系列 1.介绍 在Kubernetes中,大多数的Pod管理都是基于无状态.一次性的理念.例如Replication Controller,它只是简单的保证可提供服务的 ...
- 使用go语言数据库
1.下载并导入数据库驱动包(注意配置环境变量.数据库.go.以及ENV) 这里选择了Go-MySQL-Driver这个实现.地址是:https://github.com/go-sql-driver/m ...
- saltstack 基本的批量操作
centos 6.5 saltstack 2015.5.10 (Lithium) 基本用法 # salt 'DEV-APP-001' cmd.run 'hostname' #指定被控端 # salt ...
- tp剩余未验证内容-8
模型类的自动验证? 分为自动验证, 和 动态验证(手工验证), 前者的验证规则是定义在模型类中的, 所以要自己创建 扩展的/继承的模型类, 同时用 D方法实例化模型类 而动态验证是 先调用 valid ...
- 【CentOS 7】CentOS7与CentOS6 的区别
前言 centos7与6之间最大的差别就是初始化技术的不同,7采用的初始化技术是Systemd,并行的运行方式,除了这一点之外,服务启动.开机启动文件.网络命令方面等等,都说6有所不同. 一.系统初始 ...