response.setContentType("APPLICATION/OCTET-STREAM;charset=GBK");
你要返回的是一个DOC文件,并不是一个不可识别的二进制流,所以最好采用如下写法
response.setContentType("application/msword;charset=GBK");

解决方案 »

  1.   

    先生、女士们:如果您自己感觉java技术还不错,而且拥有一颗热情的心(请仔细考虑是否符合以上条件)。请加入QQ群“J2EE阵地”,号码是9938685。让我们共同探讨工作、学习中遇到的各种技术难题。本群人员大都拥有比较扎实的技术功底,而且异常热情。在这里我代表群中的同仁,真挚的欢迎您的到来。
      

  2.   

    不知道你用的服务器是什么?我以前在TOMCAT下也出现过这种情况,不过在TOMCAT下的web.xml文件下加了这么一行
        <mime-mapping>
            <extension>doc</extension>
            <mime-type>application/msword</mime-type>
        </mime-mapping>
    就可以了.当然还有其它形式的内容,比如:
       <mime-mapping>  
                 <extension>rar</extension>  
                 <mime-type>application/octet-stream</mime-type>  
           </mime-mapping>  
           <mime-mapping>  
                   <extension>iso</extension>  
                   <mime-type>application/octet-stream</mime-type>  
           </mime-mapping>  
           <mime-mapping>  
                   <extension>ape</extension>  
                   <mime-type>application/octet-stream</mime-type>  
           </mime-mapping>  
           <mime-mapping>  
                   <extension>rmvb</extension>  
                   <mime-type>application/octet-stream</mime-type>  
           </mime-mapping>  
           <mime-mapping>  
                   <extension>ico</extension>  
                   <mime-type>image/x-icon</mime-type>  
           </mime-mapping>