NPOI保存到服务器和导出到客户端
保存到服务器
<a class="easyui-linkbutton" href="javascript:void(0);" onclick="downloadexcel();">保存到服务器</a>
function downloadexcel() {
$.ajax({
//提交数据的类型 POST GET
type: "POST",
//提交的网址
url: "/Signup/GetDownloadEXCEL",
//成功返回之后调用的函数
success: function (data) {
if (data == true) {
//alert("保存成功!");
} else {
//alert("保存失败!");
}
},
//调用执行后调用的函数
complete: function (XMLHttpRequest, textStatus) {
//alert(XMLHttpRequest.responseText);
//alert(textStatus);
},
//调用出错执行的函数
error: function () {
//请求出错处理
}
});
}
//说明:HSSFWorkbook 用于创建 .xls
// XSSFWorkbook 用于创建 .xlsx //1.创建EXCEL中的Workbook
IWorkbook myHSSFworkbook = new HSSFWorkbook();
IWorkbook myXSSFworkbook = new XSSFWorkbook(); //2.创建Workbook中的Sheet
ISheet mysheetHSSF = myHSSFworkbook.CreateSheet("sheet1");
ISheet mysheetXSSF = myXSSFworkbook.CreateSheet("sheet1"); //3.创建Sheet中的Row
IRow rowHSSF = mysheetHSSF.CreateRow();
//SetCellValue有5个重载方法 bool、DateTime、double、string、IRichTextString(未演示)
rowHSSF.CreateCell().SetCellValue(true);
rowHSSF.CreateCell().SetCellValue(System.DateTime.Now);
rowHSSF.CreateCell().SetCellValue(9.32);
rowHSSF.CreateCell().SetCellValue("Hello World!"); //4.创建Row中的Cell并赋值
IRow rowXSSF = mysheetXSSF.CreateRow();
rowXSSF.CreateCell().SetCellValue(false);
rowXSSF.CreateCell().SetCellValue(System.DateTime.Now);
rowXSSF.CreateCell().SetCellValue(9.32);
rowXSSF.CreateCell().SetCellValue("Hello World!"); //5.保存
FileStream fileHSSF = new FileStream(@"E:\myHSSFworkbook.xls", FileMode.Create);
myHSSFworkbook.Write(fileHSSF);
fileHSSF.Close(); FileStream fileXSSF = new FileStream(@"E:\myXSSFworkbook.xlsx", FileMode.Create);
myXSSFworkbook.Write(fileXSSF);
fileXSSF.Close();
导出到客户端: <a class="easyui-linkbutton" href='/Signup/GetDownloadEXCEL' target="_self">导出</a>
public FileResult GetDownloadEXCEL()
{
//获取list数据
ExcelClass ec = new ExcelClass();
ec.Id = "";
ec.Title = "";
ec.SalePrice = "";
ec.Summary = "";
ec.VipPrice = "";
List<ExcelClass> list = new List<ExcelClass>();
list.Add(ec); //创建Excel文件的对象
NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
//添加一个sheet
NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("Sheet1"); //给sheet1添加第一行的头部标题
NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow();
row1.CreateCell().SetCellValue("ID");
row1.CreateCell().SetCellValue("用户姓名");
row1.CreateCell().SetCellValue("电话");
row1.CreateCell().SetCellValue("注册时间");
row1.CreateCell().SetCellValue("邀请人ID");
row1.CreateCell().SetCellValue("邀请人名称");
row1.CreateCell().SetCellValue("邀请人电话");
row1.CreateCell().SetCellValue("总积分");
row1.CreateCell().SetCellValue("已使用积分");
row1.CreateCell().SetCellValue("可用积分");
//将数据逐步写入sheet1各个行
for (int i = ; i < list.Count; i++)
{
NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i + );
rowtemp.CreateCell().SetCellValue(list[i].Id);
rowtemp.CreateCell().SetCellValue(list[i].Title);
rowtemp.CreateCell().SetCellValue(list[i].SalePrice);
rowtemp.CreateCell().SetCellValue(list[i].Summary);
rowtemp.CreateCell().SetCellValue(list[i].VipPrice);
}
// 写入到客户端
System.IO.MemoryStream ms = new System.IO.MemoryStream();
book.Write(ms);
ms.Seek(, SeekOrigin.Begin);
return File(ms, "application/vnd.ms-excel", "用户信息.xls"); }
NPOI保存到服务器和导出到客户端的更多相关文章
- NPOI生成不规则Excel表格(并以流的形式下载,不将文件保存在服务器上,直接在客户端导出excel)
//下载NPOI类库并添加引用 using NPOI.SS.UserModel; using NPOI.HSSF.UserModel; using NPOI.SS.Util; public stati ...
- [转].net 使用NPOI或MyXls把DataTable导出到Excel
本文转自:http://www.cnblogs.com/yongfa365/archive/2010/05/10/NPOI-MyXls-DataTable-To-Excel-From-Excel.ht ...
- Cas 服务器 Service(Cas客户端)注册信息维护
作为Cas服务器,允许哪些客户端接入与否是通过配置来定义的.对Cas服务器来说,每一个接入的客户端与一个Service配置对应:在Cas服务器启动时加载并注册上这些Service,与之对应的客户端才能 ...
- redis集群与分片(1)-redis服务器集群、客户端分片
下面是来自知乎大神的一段说明,个人觉得非常清晰,就收藏了. 为什么集群? 通常,为了提高网站响应速度,总是把热点数据保存在内存中而不是直接从后端数据库中读取.Redis是一个很好的Cache工具.大型 ...
- nodejs 服务器实现区分多客户端请求服务
初始实现 var net = require('net');//1 引入net模块 var chatServer = net.createServer();//创建net服务器 var clientL ...
- 在线编辑word文档 可保存到服务器
使用说明:该方法只在office xp 和 2003上 测试通过,2000及以下 版本没试. 注意:你要打开的服务器端的word文档要有写权限.iis要开起 web服务扩展中的webdav为允许 具体 ...
- socket 服务器向指定的客户端发消息
一.需求 需求如题. 当多个客户端连接服务器时,服务器如何给指定的客户端发送消息. 二.解决方案 核心思想: 在服务器端,需保存不同客户端的socket列表及客户端相关信息. socket含有发送方和 ...
- Dynamics AX 2012 R3 Demo 安装与配置 - 安装数据服务器、AOS和客户端 (Step 2)
上一节中,Reinhard主要讲解了怎么配置安装环境,尤其是域控制器,并在域中添加了一个管理员账户 MSDynAX.NET\Reinhard ,以后的安装配置,均在该账户下进行. 现在运行 AX 20 ...
- java文件保存至服务器
import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java ...
随机推荐
- CentOS7下SVN server的安装与配置
CentOS7通过yum install命令进行安装SVN(参考:http://subversion.apache.org/packages.html#centos) $ yum install su ...
- 微服务与DevOps关系
随着IT技术的不断发展,从传统的IT建设模型逐步向新型IT建设模型过渡,建设模式的改变,必然影响应用系统的全生命周期.应用系统的建设经过单体应用.SOA应用.逐步走向微服务应用,至于何为单体应用.SO ...
- win10 安装oracle 11gR2_database(内附下载地址)
前言:想要为了后续开展项目做准备,而且打算使用oracle,所以必须先安装oracle.本机 win 10 64位系统. 第一步,下载 oracle 下载地址,官网(需要登录注册): http://d ...
- WCF使用net.tcp传输文件
摘要:今天看了一些官方的资料和配置,简单写了一个WCF服务来传递一个文件,借此看看WCF传输大文件的能力,这里采用的是NetTcp绑定,之所以没有采用 basicHttpBinding是因为考虑这种方 ...
- PoPo数据可视化周刊第6期
PoPo数据可视化 聚焦于Web数据可视化与可视化交互领域,发现可视化领域有意思的内容.不想错过可视化领域的精彩内容, 就快快关注我们吧 :) 本期可视化精彩视频请关注公众号浏览 全天智能获Pre-A ...
- Codeforces 1097 Alex and a TV Show
传送门 除了操作 \(3\) 都可以 \(bitset\) 现在要维护 \[C_i=\sum_{gcd(j,k)=i}A_jB_k\] 类比 \(FWT\),只要求出 \(A'_i=\sum_{i|d ...
- leaflet 整合 esri
此 demo 通过 proj4js 将 leaflet 与 esri 整合起来,同时添加了 ClusteredFeatureLayer 的支持. 下载 <html> <head> ...
- 关于微信小程序开发中遇到的缺少game.json问题的解决
一.小程序开发的两种选项 ①小游戏开发:内部对应的入口配置文件为game.json丶game.wxml之类的文件或者项目. ②小程序开发:内部对应的入口配置文件为app.json丶app.wxml之类 ...
- jquery validation表单验证插件。
这个是刚学的,觉得对以后挺有用的,就想把自己所学的分享一下. 校验规则: (1)required:true 必输字段 (2)number:true 必须输入合法的数字(负数,小数) (3)digits ...
- C#中的三种timer
转 https://blog.csdn.net/hoiven/article/details/51362582 如果你需要使用规律的时间间隔重复执行一些方法,最简单的方式是使用定时器(timer). ...