C#读取excel以及asp.net消息头的使用

生成或者读取excel文件在java或者c#都是比较吸引眼球的一大亮点,说直白点就是流的使用,生成或者读取excel有很多种方法,现在我就介绍一种比较好用的方法(NPOI)

我们可以把NPOI看成是java里的第三方jar包,开发的时候只要引入进来就可以了

1.下面是NPOI的下载地址

http://npoi.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=19351

下载好文件后只要把bin下的全部东西引入就可以了

2.写个asp.net的web页面

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="exportexcel._Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>asp.net消息响应头的使用</title>
</head>
<body>
   <a href="ashx/Download.ashx">下载excel</a>
   <a href="ashx/Look.ashx">查看excel</a>
</body> 
</html>

3.编写一般处理程序

(1)消息头如下

 context.Response.ContentType = "application/x-excel";
 string fileName = HttpUtility.UrlEncode("我导出的excel.xls");
  context.Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);

这个链接有许多比较常用的消息头,大家参考下

http://www.cnblogs.com/chenghm2003/archive/2008/10/19/1314703.html


(2)导出excel文件

 //开始导出excel
            HSSFWorkbook workBook = new HSSFWorkbook();
            //生成excel的行
            HSSFSheet sheet = workBook.CreateSheet();
            //生成excel的列,第一列是空的
            HSSFRow row =sheet.CreateRow(1);
            //生成excel的单元格,第一行为空
            HSSFCell ceel = row.CreateCell(1,HSSFCell.CELL_TYPE_STRING);
            ceel.SetCellValue("hello");
            row.CreateCell(2, HSSFCell.CELL_TYPE_STRING).SetCellValue("潘玮柏");
            workBook.Write(context.Response.OutputStream);

下面看下效果图

下面是输出的excel文件

代码我会上传,大家自己去下载。吐舌头


原文链接:加载失败,请重新获取