JSP到Excel编码问题。值=?

时间:2011-08-02 10:54:48

标签: excel jsp encoding

Jsp页面显示阿拉伯字符非常像:

  

关于bla blaتضاربتوقعاتشهرأكتوبرفيقالوال

但是当我将其导出到Excel并尝试打开它时,Excel说:

  

您尝试打开的文件“example.xls”的格式与文件扩展名指定的格式不同。在打开文件之前,请验证文件是否已损坏且是否来自受信任的源。你想现在打开文件吗?

点击“是”之后,我之前写的是:

  关于什么事情可以说什么呢????? ??? ??? ??? ??? ??? ??? ??? ??? ??? ???????????

Jsp页面有:

<%@ page isELIgnored="false" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>

如果我复制阿拉伯字符并将其粘贴到Excel中,Excel会清楚地显示它们。

我使用charset = cp1254。 当我把它改成charset = cp1256时,Value就像怪物一样。

任何解决问题的想法?

1 个答案:

答案 0 :(得分:0)

你是用一个带有错误扩展名的简单的vanilla HTML文件来欺骗Excel。这不会完美无缺,因为Excel警告过你。

您需要使用Servlet提供真正的二进制XLS文件,而不是使用JSP的某些HTML表。您可以使用Apache POI HSSFJExcelAPI进行此操作。