您的位置:首页 > 编程语言 > ASP

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

2012-03-04 12:33 483 查看
生成或者读取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文件



代码我会上传,大家自己去下载。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐