JSP页面中导出Excel文件及其中文乱码的解决办法

Web应用导出Excel报表的简单实现(HTML)

在Web应用中,很多数据经常要导出成Excel文档。用专门的生成真正的Excel文档的方式比较复杂,不太好用。所以经常用一种简单的方式来实现,即将报表保存为HTML格式,然后用Excel打开。
实现方式:
第一步,用JSP实现HTML版本的报表
第二步,在该JSP页面头部设置response的ContentType为Excel格式
<% response.setContentType("application/vnd.ms-excel;charset=GBK"); %>

中文问题:
查看源代码时发现JSP文件中写死的中文为乱码,则在JSP文件头部添加一行
<%@ page contentType="text/html; charset=gb2312" %>
查看源代码时发现文字为中文,但是用Excel打开为乱码则在<html>与<head>中加入
<meta http-equiv="Content-Type" content="text/html; charset=GBK">

用Servlet实现也是类似的处理方法。

实现样例:Test.jsp

<%@ page contentType="text/html; charset=GBK" %>
<% response.setContentType("application/vnd.ms-excel;charset=GBK"); %>
<HTML>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<head><title>Test</title></head>
<body>
<TABLE borderColor=#111111 cellSpacing=0 cellPadding=2 width=1200 align=center border=1>
<TR>
<TD align=middle width="10%" height=20 rowSpan=2>项目 </TD>
<TD align=middle width="2%" height=20 rowSpan=2>计量单位 </TD>
<TD align=middle width="4%" height=20>满期赔付率 </TD>
</TR>
</TABLE>
</body>
</HTML> Web应用导出Excel报表的简单实现(HTML)
在Web应用中,很多数据经常要导出成Excel文档。用专门的生成真正的Excel文档的方式比较复杂,不太好用。所以经常用一种简单的方式来实现,即将报表保存为HTML格式,然后用Excel打开。
实现方式:
第一步,用JSP实现HTML版本的报表
第二步,在该JSP页面头部设置response的ContentType为Excel格式
<% response.setContentType("application/vnd.ms-excel;charset=GBK"); %>

中文问题:
查看源代码时发现JSP文件中写死的中文为乱码,则在JSP文件头部添加一行
<%@ page contentType="text/html; charset=gb2312" %>
查看源代码时发现文字为中文,但是用Excel打开为乱码则在<html>与<head>中加入
<meta http-equiv="Content-Type" content="text/html; charset=GBK">

用Servlet实现也是类似的处理方法。

实现样例:Test.jsp

<%@ page contentType="text/html; charset=GBK" %>
<% response.setContentType("application/vnd.ms-excel;charset=GBK"); %>
<HTML>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<head><title>Test</title></head>
<body>
<TABLE borderColor=#111111 cellSpacing=0 cellPadding=2 width=1200 align=center border=1>
<TR>
<TD align=middle width="10%" height=20 rowSpan=2>项目 </TD>
<TD align=middle width="2%" height=20 rowSpan=2>计量单位 </TD>
<TD align=middle width="4%" height=20>满期赔付率 </TD>
</TR>
</TABLE>
</body>
</HTML>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值