(JSP)关于手机端(尤其是苹果手机)pdf文件无法打开的解决方案

Posted 糖炒栗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(JSP)关于手机端(尤其是苹果手机)pdf文件无法打开的解决方案相关的知识,希望对你有一定的参考价值。

流的方式下载附件

<!--
@author :daisy
@date : 2011-12-04
@note : 从数据库中读取BLOB图片显示
-->
<%@page import="com.cwai.dao.DBManager"%>
<%@ page contentType=" text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
  out.clear();
  out = pageContext.pushBody();
  //读取blob字段的图片内容,将其显示
  String xh = request.getParameter("xh");
  String wjm = request.getParameter("wjm"); 
  wjm = java.net.URLEncoder.encode(wjm, "UTF-8");
  try {
    ServletOutputStream sos = null;
    String sql = "SELECT WJNR WJNR FROM FJ_SWYB WHERE XH = ‘" + xh+"‘";
    System.out.println(sql);
    byte[] blob_array = DBManager.getBlob(sql, null);
    try {

      //修改前
      //response.setContentType("multipart/form-data");
      //修改后
      response.setContentType("multipart/form-data");
      String kzm = wjm.substring(wjm.lastIndexOf(".")+1);
      if("PDF".equals(kzm.toUpperCase()) ){
        response.setContentType("application/pdf");
      }


      String downFileName = new String(wjm.getBytes("GB2312"),"iso8859-1");

      //注意:attachment \inline 两者的区别
      response.setHeader("Content-Disposition", "attachment;filename=\""+downFileName+"\"");
      sos = response.getOutputStream();
      System.out.println("blob_array-lenth:----" + blob_array.length);
      sos.write(blob_array);
      sos.flush();
      sos.close();
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      if (sos != null) sos.close();
    }
    return;
  } catch (Exception ex) {
    ex.printStackTrace();
}
response.sendError(404);
%>













































以上是关于(JSP)关于手机端(尤其是苹果手机)pdf文件无法打开的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

苹果手机微信扫码下载pdf文件,出现空白页。

苹果手机微信扫码下载pdf文件,出现空白页。

vue-pdf 预览乱码问题

苹果手机显示无sim卡怎么回事?

格力手机叫板苹果手机?除了嘴硬之外,恐怕再无其他

如何及时清理Android里WebView的内存,尤其是大量图片的内存