下载DOC文件

public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  byte[] data= request.getParameter("filebyte").getBytes();//得到二进制文件内容
  String filename =request.getParameter("filename");//得到文件名称
  response.setContentType("application/msword");
  response.setCharacterEncoding("gb2312");
  
  String fname= new String(filename.getBytes("GB2312"),"ISO8859-1");
  response.addHeader("Content-Disposition", "attachment;filename="+fname+".doc");
  ServletOutputStream sos=response.getOutputStream();
  sos.write(data);
  sos.flush();
  sos.close();
  return null;
 } 

这样会更好些

 

  if (data_type.equalsIgnoreCase("doc")) {
            //response.setContentType("application/x-download");
   response.setContentType("application/msword");
   response.setCharacterEncoding("gb2312");
   
   //String fname=Base64.decodeToString(request.getParameter("name"));
   String fname= new String(fn.getBytes("GB2312"),"ISO8859-1");
   response.addHeader("Content-Disposition", "attachment;filename="+fname+".doc");
   ServletOutputStream sos=response.getOutputStream();
   sos.write(bs);
   sos.flush();
   sos.close();
  } else {
   String conttype = null;
   conttype = (String) ct.getContentTypes().get(
     data_type.toLowerCase());
   response.setContentType(conttype);

   ServletOutputStream sout = response.getOutputStream();
   sout.write(bs);

   sout.flush();
   sout.close();
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值