保存到服务器

<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. 【转】通过CountDownLatch提升请求处理速度

    countdownlatch是java多线程包concurrent里的一个常见工具类,通过使用它可以借助线程能力极大提升处理响应速度,且实现方式非常优雅.今天我们用一个实际案例和大家来讲解一下如何使用 ...

  2. proto3 笔记1

    定义 Message 类型, 例子如下: syntax = "proto3"; message SearchRequest { string query = 1; int32 pa ...

  3. VS2013平台安装Qt插件过程

    1.下载所需安装包: Qt5.3.Qt插件下载地址:http://qt-project.org/downloads. qt-vs-addin-1.1.11-opensource.exe 下载地址:ht ...

  4. Cocoa pod导入第三方框架遇到的那点事儿

    废话不多说,直接上干货. 以下所有操作均是在Cocoapod导入第三方库,并且是.xcworkspace的工程里面操作的, 1.导入头文件找不到,也就是所谓的,not find ''AFNetwork ...

  5. 使用Python生成基础验证码教程

    pillow是Python平台事实上的图像处理标准库.PIL功能非常强大,但API却非常简单易用. 所以我们使用它在环境里做图像的处理. 第一步 下载pillow #运行命令 pip install ...

  6. java.lang.IllegalStateException: Mapped class was not specified

    错误如下:java.lang.IllegalStateException: Mapped class was not specifiedat org.springframework.util.Asse ...

  7. Unable to load script from assets 'index.android.bundle' 出错?

    野路子太多,坑人真的!F**k 言归正传,当你运行 react native 程序的时候出现这个错误 ,如果您使用Windows,请按以下方式运行命令,或者如果出现错误“无法找到条目文件index.a ...

  8. Path2.0中绚丽的的旋转菜单

    我们看一下实现的效果图: 在上图中,我将菜单弹出的效果设置成直线型,最终的弹出或汇总点在下面的红色按钮中. 它的实现原理是设置动画的同时并利用动画中的插入器(interpolator)来实现弹力.主要 ...

  9. 分布式部署下的报表调用 API调用 权限问题以及性能方案

     背景描述: 客户的实际情况是需要在具体系统构架前,通过与厂商讨论确定最终的系统架构方案. 需求是客户自己有管理系统,希望建立一个独立的报表服务器,该报表服务器可以对多个管理系统提供报表服务,不知 ...

  10. java 内存分析之static

    源码: 内存分析: 源码: 静态方法:   用static 声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它,所以在static 方法中不可访问非static 的成员.   可以通过对象 ...