保存到服务器

<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保存到服务器和导出到客户端的更多相关文章

  1. NPOI生成不规则Excel表格(并以流的形式下载,不将文件保存在服务器上,直接在客户端导出excel)

    //下载NPOI类库并添加引用 using NPOI.SS.UserModel; using NPOI.HSSF.UserModel; using NPOI.SS.Util; public stati ...

  2. [转].net 使用NPOI或MyXls把DataTable导出到Excel

    本文转自:http://www.cnblogs.com/yongfa365/archive/2010/05/10/NPOI-MyXls-DataTable-To-Excel-From-Excel.ht ...

  3. Cas 服务器 Service(Cas客户端)注册信息维护

    作为Cas服务器,允许哪些客户端接入与否是通过配置来定义的.对Cas服务器来说,每一个接入的客户端与一个Service配置对应:在Cas服务器启动时加载并注册上这些Service,与之对应的客户端才能 ...

  4. redis集群与分片(1)-redis服务器集群、客户端分片

    下面是来自知乎大神的一段说明,个人觉得非常清晰,就收藏了. 为什么集群? 通常,为了提高网站响应速度,总是把热点数据保存在内存中而不是直接从后端数据库中读取.Redis是一个很好的Cache工具.大型 ...

  5. nodejs 服务器实现区分多客户端请求服务

    初始实现 var net = require('net');//1 引入net模块 var chatServer = net.createServer();//创建net服务器 var clientL ...

  6. 在线编辑word文档 可保存到服务器

    使用说明:该方法只在office xp 和 2003上 测试通过,2000及以下 版本没试. 注意:你要打开的服务器端的word文档要有写权限.iis要开起 web服务扩展中的webdav为允许 具体 ...

  7. socket 服务器向指定的客户端发消息

    一.需求 需求如题. 当多个客户端连接服务器时,服务器如何给指定的客户端发送消息. 二.解决方案 核心思想: 在服务器端,需保存不同客户端的socket列表及客户端相关信息. socket含有发送方和 ...

  8. Dynamics AX 2012 R3 Demo 安装与配置 - 安装数据服务器、AOS和客户端 (Step 2)

    上一节中,Reinhard主要讲解了怎么配置安装环境,尤其是域控制器,并在域中添加了一个管理员账户 MSDynAX.NET\Reinhard ,以后的安装配置,均在该账户下进行. 现在运行 AX 20 ...

  9. java文件保存至服务器

    import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java ...

随机推荐

  1. 【原】Spring activiti 环境搭建之数据库创建

    由于在开发工作流的时候,避免不了要保存一些数据和流程走向;所以在搭建Spring activiti开发环境的时候需要把官方提供的23张表创建到我们的DB,后续的流程都会在这些表中记录. 1.创建代码如 ...

  2. 撩课-Java每天5道面试题第24天

    151.springMVC和struts2的区别有哪些? .springmvc的入口是一个servlet即前端控制器(DispatchServlet), 而struts2入口是一个filter过虑器( ...

  3. Anychart隐藏属性

    一.嵌入字体的使用 font标签可以使用嵌入字体,只需加入embed="true"即可.

  4. Differences between page and segment

    https://techdifferences.com/difference-between-paging-and-segmentation-in-os.html how does paging so ...

  5. 使用vue+webpack打包时,去掉资源前缀

    在build文件夹下找到webpack.prod.conf.js文件,搜索 filename: utils.assetsPath('css/[name].[contenthash].css'), 将[ ...

  6. JS 时间转化为几分钟前 几小时前 几天前

    背景:最近公司要做动态列表,类似于微信朋友圈.动态创建时间就需要显示为 刚刚.几分钟前.几小时前.几天前.2018-05-15,这样的形式. 代码如下 var minute = 1000 * 60; ...

  7. OpenGL学习--05--纹理立方体--代码

    1.tutorial05.cpp // Include standard headers #include <stdio.h> #include <stdlib.h> // I ...

  8. maven 结合mybaits整合框架,打包时mapper.xml文件,mapper目录打不进war包去问题

    首先,来看下MAVENx项目标准的目录结构: 一般情况下,我们用到的资源文件(各种xml,properites,xsd文件等)都放在src/main/resources下面,利用maven打包时,ma ...

  9. 2017年秋季个人阅读计划 ---《掌握需求过程》第二版 pdf

    这学期我们学习是软件需求分析,为了扩展视野,我们老师要求精读一本书,我根据老师推荐的书籍中找到了一本,名字叫做<掌握需求过程>,我大概浏览了一下这本书,这本书论述了软件开发中的重要课题—如 ...

  10. webpack的require是如何工作的?

    https://stackoverflow.com/questions/35625593/how-does-webpacks-require-work wepback的require函数调用类似于no ...