jsp页面表格导出excel
我在jsp页面中有一个table显示列表数据,有一个按钮点击导出显示的数据,提示保存成一个excel文件,我在网站查了很多方法,一般是用javascript来做的,可是都会有这样那样的错误。。改了很久没搞定。请达人们提供的答案是要在java web工程中jsp页面里测试成功的哦。
------解决方案--------------------我一般情况下,不愿给人代码。
给你个思路:
点击按钮时,提交到你的servlet中,在servlet中设置响应类型(此类型就是为了可以弹出那种excel形式的),然后通过响应对象获得输入流,读取数据,这数据你怎么获得随你的便了,重新查询也罢,从session中取出也罢。
读完后,用PrintWriter对象输出弹出框提示即可。
------解决方案--------------------千万别用javascript导出Excel,用jxl.jar很简单的。下下来,里面有现成的例子
这是我用jsp导出Excel的关键代码:
<%@ page contentType="application/vnd.ms-excel;charset=gb2312" language="java" import="java.sql.*,java.util.*,java.util.text.*,java.io.*,jxl.*,jxl.write.*,jxl.format.*"
errorPage="" %>
<%
response.setContentType("application/vnd.ms-excel");
out.clearBuffer(); // 如果使用JSP,需要加上这一句
response.addHeader("Content-Disposition", new String(("filename=我的Excel.xls").getBytes("GBK"), "ISO-8859-1"));
OutputStream os = response.getOutputStream(); // 页面输出流,jsp/servlet都可以
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(os);
jxl.write.WritableSheet ws = wwb.createSheet("机电考核汇总表", 0);
往下就是添加label了
//写入Exel工作表
wwb.write();
//关闭Excel工作薄对象
wwb.close();
直接访问这个jsp页面就是一个Excel文件
------解决方案--------------------用poi实现,我刚做了一个这样的项目,具体可加QQ 45466484聊,别忘送分呀,哈哈
------解决方案--------------------<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>EB页面导出为EXCEL文档的方法</title>
<script type="text/javascript">
<!-- download
function saveCode(obj) {
var winname = window.open('', '_blank', 'top=10000');
var strHTML = document.all.tableExcel.innerHTML;
winname.document.open('text/html', 'replace');
winname.document.writeln(strHTML);
winname.document.execCommand('saveas','','excel.xls');
winname.close();
}
-->
</script>
</head>
<body>
<div id="tableExcel">
<table id="test" width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td colspan="5" align="center">WEB页面导出为EXCEL文档的方法</td>
</tr>
<tr>
<td>列标题1</td>
<td>列标题2</td>
<td>列标题3</td>
<td>列标题4</td>
<td>列标题5</td>
</tr>
<tr>
<td>aaa</td>
<td>bbb</td>
<td>ccc</td>
<td>ddd</td>
<td>eee</td>
</tr>
<tr>
<td>AAA</td>
<td>BBB</td>
<td>CCC</td>
<td>DDD</td>
<td>EEE</td>
</tr>
<tr>
<td>FFF</td>
<td>GGG</td>
<td>HHH</td>
<td>III</td>
<td