在线等!!我的网站系统是jsp环境的,主页上链接的excel文件,本意是提供下载的,但我一点击打开的却是htm文件的,成了乱码,好晕啊!!!请问大家有没有遇过这种情况呢?右击目标另存为,在windows 2000的系统下保存的是execl文件,但在windows xp 系统下保存的是htm文件,这是怎么回事啊??请问怎么解决呢?

解决方案 »

  1.   

    index.jsp:
    <a href="download.jsp?path=img/&name=test.gif">down</a> download.jsp:
    <% 
    String root = getServletContext().getRealPath("/"); 
    String path = request.getParameter("path"); 
    String name = request.getParameter("name"); 
    response.setContentType("unknown"); 
    response.addHeader("Content-Disposition", "filename=\"" + name + "\""); 
    try 

    java.io.OutputStream os = response.getOutputStream(); 
    java.io.FileInputStream fis = new java.io.FileInputStream(root + path + name); 
    byte[] b = new byte[1024]; 
    int i = 0; 
    while ( (i = fis.read(b)) > 0 ) 

    os.write(b, 0, i); 

    fis.close(); 
    os.flush(); 
    os.close(); 

    catch ( Exception e ) 


    %> 看看行不行
      

  2.   

    ishfox(程序員是不需要女人的!!!) :首先非常感谢你!我先试试先
      

  3.   

    你在windows xp里面另存位的时候,把扩展名改称xls不就行了吗
      

  4.   

    infowain(infowain) :感谢!你这种方法我也试过,但问题是很多人不会这样做,也是很麻烦,这是治标不治本的方法啊^_^
      

  5.   

    请问有没有直接设置的而不用写程序的?为什么word文档链接打开就是word文档呢,而其他类型的文件就不行呢?百思不得其解!!
      

  6.   

    这个问题好解决:就是在web.xml中配置mime的映射,它就是告诉客户端浏览器是用什么类型来打开,具体配置你模仿其中已有的word文档的mime配置,改成相应的xls和下面打开的应用程序就可以了
      

  7.   

    <mime-mapping> 
            <extension>xls</extension> 
            <mime-type>application/msexcel</mime-type> 
        </mime-mapping>