`

点击pdf/word等链接时时,直接打开而不是下载的方法

阅读更多
  1. <%@ page session="false" pageEncoding="UTF-8"%>   
  2. <%@page import="java.io.*"%>   
  3. <%   
  4.   response.setContentType("application/pdf");   
  5.   
  6.   out.clearBuffer(); // 如果使用JSP,需要加上这一句     
  7.   OutputStream os = response.getOutputStream(); // 页面输出流,jsp/servlet都可以     
  8.   response.addHeader("Content-Disposition"new String(("filename=pattern.pdf")   
  9.       .getBytes("GBK"), "ISO-8859-1")); // 针对中文文件名     
  10.   File f = new File(application.getRealPath(".")+"/pattern.pdf"); // 你的文件     
  11.   InputStream is = new FileInputStream(f); // 文件输入流     
  12.   byte[] bs = new byte[1024]; // 读取缓冲区     
  13.   int len;   
  14.   while ((len = is.read(bs)) != -1) { // 循环读取     
  15.     os.write(bs, 0, len); // 写入到输出流     
  16.   }   
  17.   is.close(); // 关闭     
  18.   os.close(); // 关闭   
  19. %>  
<%@ page session="false" pageEncoding="UTF-8"%>
<%@page import="java.io.*"%>
<%
  response.setContentType("application/pdf");

  out.clearBuffer(); // 如果使用JSP,需要加上这一句  
  OutputStream os = response.getOutputStream(); // 页面输出流,jsp/servlet都可以  
  response.addHeader("Content-Disposition", new String(("filename=pattern.pdf")
      .getBytes("GBK"), "ISO-8859-1")); // 针对中文文件名  
  File f = new File(application.getRealPath(".")+"/pattern.pdf"); // 你的文件  
  InputStream is = new FileInputStream(f); // 文件输入流  
  byte[] bs = new byte[1024]; // 读取缓冲区  
  int len;
  while ((len = is.read(bs)) != -1) { // 循环读取  
    os.write(bs, 0, len); // 写入到输出流  
  }
  is.close(); // 关闭  
  os.close(); // 关闭
%>



请注意这一句

  1. response.addHeader("Content-Disposition"new String(("filename=pattern.pdf")   
  2.       .getBytes("GBK"), "ISO-8859-1")); // 针对中文文件名    
response.addHeader("Content-Disposition", new String(("filename=pattern.pdf")
      .getBytes("GBK"), "ISO-8859-1")); // 针对中文文件名  

如果要下载的话,就改成
  1. response.addHeader("Content-Disposition"new String(("attachment; filename=pattern.pdf")   
  2.       .getBytes("GBK"), "ISO-8859-1")); // 针对中文文件名    
response.addHeader("Content-Disposition", new String(("attachment; filename=pattern.pdf")
      .getBytes("GBK"), "ISO-8859-1")); // 针对中文文件名  






这个东西在http协议里面有规定。

顺便说一句,filename是你下载或者另存为时的文件名,必须用iso-8859-1的编码才可以。

分享到:
评论
1 楼 liyan4770 2010-04-10  
非常感谢!!!正解

相关推荐

    PDF to Word 3.0.1中文版 (含注册码)

    稍等片刻转换完成后,点击状态栏的链接可以直接打开转换后的Word文件。 支持加密文件的转换 AnyBizSoft PDF to Word支持加密的文件转换,其中: 对于有复制和打印限制的PDF文件:AnyBizSoft PDF to Word可以...

    亲测,以html形式显示或预览word,excel,pdf,txt

    本源码主要是ASP.net后台通过相应的类把word\excel\pdf\txt文件转化为html,将地址传回前端,前端获取地址,用iframe进行展现预览。

    word写入数据转pdf

    word模板写入数据,支持表格,图片等,然后将word转换成pdf预览或者下载,如果遇到问题可以给我留言,jar包地址 链接: https://pan.baidu.com/s/1wsIg5ofmZvE_DLCyrfVfEw 提取码: itp9 复制这段内容后打开百度网盘...

    如何将PPT转word

    当我们在Word中点击“打开”菜单时,在“打开”对话框的“文件类型”下拉菜单中可以看到“PDF”选项,这就意味着我们可以用Word直接打开PDF文档了! ScanSoft PDF Converter的工作原理其实很简单,它先捕获PDF文档中...

    Word 出现标题显示黑色的方块终极解决方法,亲测好使!!.pdf

    Word 出现标题显示黑色的方块终极解决方法,亲测好使!! 网上常见的治标不治本的方法: 1、将光标移至黑块的右侧,之后按键盘左方向键“←”,此时黑块变为灰色,即为“选中”状态 2、之后按下键盘组合键...

    PDF Reader Pro v2.7.7

    – 直接编辑PDF本文文字、合并多个文档、将PDF拆分为多个文件、从另一个PDF文件插入页面、插入图片注释、页眉页脚、链接、手绘、导出注释、打印、本地离线PDF转Word / Excel / PPT等任何其他Microsoft Office®格式...

    java通过url在线预览Word、excel、ppt、pdf、txt文档

    java通过url在线预览Word、excel、ppt、pdf、txt文档

    word使用技巧大全

    ★超级链接的直接插入 31 ★利用自动更正功能将网址转化为超级链接 31 ★清除超级链接的下划线 32 ★更改超级链接文字的外观 32 ★取消超级链接的转换 32 ★怎样创建自己的电子邮件签名或电子邮件信 32 ★怎样用Word...

    iSkysoft PDF Converter Pro 4.0.5汉化破解版.rar

    iSkysoft PDF Converter Pro安装说明:解压后先运行pdf-converter-pro_full1280.exe安装官方原版程序,安装后不要打开iSkysoft PDF Converter Pro,运行iSkysoft PDF Converter Pro_Patch.exe汉化破解补丁...

    韩文pdf阅读器:GaaihoReader_KOR_X86_4.20.exe

    韩文版本 改进快速浏览PDF文件 ...新功能在线免费转换PDF 新版阅读器加入了文电通全新推出的免费在线转换服务“AddPDF”的链接,您可以浏览、编辑PDF,还可以将PDF转换为Word、或是将Word转换为PDF。快来试试吧!

    阅读Pdf文件和打印Pdf文件的工具嘟嘟阅读器DUDUPDFV1.3绿色版

    内置了各类PDF文件相关工具的链接,您可以方便的用它帮您进行PDF转word的工作,编辑PDF文件的工作 具有文本选择和查找功能。能够打开带密码的Pdf文档。可以用来查看和打印 Adobe 便携文档格式 (PDF) 文件.

    保存文本到PDF, WORD, EXCEL或发送电子邮件。「Save Text to PDF, WORD, EXCEL or Send EMAIL」-crx插件

    3.您可以直接发送电子邮件,而无需打开任何电子邮件帐户。使用“选择并保存”,您将永远不会错过自己喜欢的内容。立即下载浏览器扩展,开始使用。我们还在不断努力,以使服务每天都变得更好。我们很想听听您的反馈和...

    基于ASP.NET MVC项目源码在线预览Word、Excel、PPT、PDF文档

    基于ASP.NET MVC框架的学习项目,包含MVC的框架的设计思路,...需要VS2012版本及以上版本可以打开。VS2010版本及以及以上版本的源码链接地址:http://download.csdn.net/download/u012949335/10231812,讲解更加详细。

    【最新版】mac-pdfelement-express_full4133.dmg 1.2.1【亲测可用】最好的PDF工具

    编辑链接:删除或添加超链接到PDF页面以打开文件或访问网页。 无缝管理PDF页面 拆分页面:将一个PDF文件拆分为多个文档。 提取页面:从PDF文档中提取一页或多页,以创建单独的PDF文件。 插入页面:插入空白页面或...

    jspSmartUpload.jar

    //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为 //doc时,浏览器将自动用word打开它。扩展名为pdf时, //浏览器将用acrobat打开。 su.setContentDisposition(null); // 下载文件 su.downloadFile("/...

    Excel word “由于本机的限制_该操作已被取消_请与管理员联系”的已生效解决办法

    正常解决方法: 1.打开开始菜单,在运行里输入regedit,回车 ...这个应该是你的浏览器改了...如此方法还不行,请参照“Excel word 链接或公式报错“由于本机的限制_该操作已被取消_请与管理员联系”的彻底解决方法。.pdf”

    PDF转Word 新标签页 Chrome-crx插件

    1.无痕模式在任何网站上选择文本或链接,然后右键单击菜单“以隐身模式搜索/打开”。在隐身模式下,浏览器将不会记录您的访问记录,Cookie和表单数据。 您可以放心浏览,而不会留下任何痕迹,可以更好地保护您的隐私...

    PDF显示控件 应用于BS/CS 不需考虑字体且有文档树

    3,左侧具备文档树,支持点击功能 4,显示本地文件打开方式有两种: 一种单页显示,一种多页显示(类似于word,adobeReader) 单页显示支持文档中的书签和URL链接 5,得到PDF总页码,当前显示页码, 6,上下页...

Global site tag (gtag.js) - Google Analytics