请教一个weblogic8.1下载xls文件的问题
我想在web应用的目录下放上xls文件供使用用户下载
可是在操作中存在以下问题:
1.我开始使用<a href="...">来指定文件的路径来提供下载.可是一点击就自动使用IE打开文件,由于格式不对,出现乱码,使用右键另存,只能存为.htm的文件. 在web.xml下,我已经加入:
<mime-mapping>
<extension>doc</extension>
<mime-type>application/msword</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xls</extension>
<mime-type>application/msexcel</mime-type>
</mime-mapping>
<mime-mapping>
<extension>pdf</extension>
<mime-type>application/pdf</mime-type>
</mime-mapping>
2.我尝试的使用java文件流来操作,代码如下:
<%@ page import="java.io.*" %>
<%
response.reset();
response.setContentType("application/vnd.ms-excel");
ServletOutputStream sout = response.getOutputStream();
InputStream in = new FileInputStream("c:\\1.xls");
byte[] b = new byte[20000];
int length = in.read(b);
OutputStreamWriter ow = new OutputStreamWriter(sout,"GBK");
ow.write(new String(b));
ow.flush();
sout.close();
ow.close();
%>
如果把文件流输出到网页上,打开,或另存文件就会在xls文件前方加上4个字节,导致文件打开出现乱码,如果使用文件流另存为xls文件,就一切正常.
此问题在Tomcat下一切正常,在weblogic下就出现异常,我在网上查了许多资料,试了好些方法,都无法实现.
望高手指点,或者给一个替代方案.