JSP响应内容类型Excel

时间:2009-11-19 15:10:43

标签: excel jsp types response

当我设置响应内容类型为excel时。在excel表中,它是1-Jan而不是1-1。 这是代码片段

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>

<%
    response.setContentType("application/vnd.ms-excel");
%>
<table><tr><td>1-1</td></tr></table>

附加单引号“'”将起作用。有没有其他解决方案来设置单元格格式或更正文本?

3 个答案:

答案 0 :(得分:4)

您可以使用Apache POI项目将Excel文件返回到输出流,这样您就可以进行正确的数据/单元格格式化。

请参阅http://poi.apache.org/

这会对你有用吗?

答案 1 :(得分:3)

你是在使用一个内容类型错误的普通HTML表格来欺骗webbrowser和Excel而你是因为特定于Excel的行为而抱怨它在Excel中不能正常工作?

这听起来不对。

如果您需要Excel文件,请创建一个真实的Excel文件,而不是纯HTML表格以及错误的内容类型。您可以使用前面提到的Apache POI HSSF或Andy Khan的JExcelAPI

作为替代方案,您可以随时使用CSV。不透明,更容易。您可以在此处找到我最近发布的示例:JSP page without HTML code for exporting data to Excel Sheet

答案 2 :(得分:1)

我快速完成了工作

<%@page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%
    response.setContentType("application/vnd.ms-excel");
%>
<table>
<tr><td style='mso-number-format:"\@";'>1-1< /td></tr>
</table>

我们计划使用poi api。

感谢所有人。