如何在浏览器中直接打开pdf/doc/excel文件

我在文件下载的部分 需要在具体文件名上加超链接 到可以直接在浏览器打开
另外下载时候 能不能也默认直接打开在浏览器 而不是显示对话框
 
请做个类似功能的JE友给个帮助 谢谢先

在struts2 + spring + hibernate中
问题补充:

引用

response.setHeader("Content-Disposition", "inline"+ "; filename=/"" + encodedShowName+"/""); 

这个我试过 会跳出对话框放你选择 是否打开或者保持

我想要的是直接打开在浏览器

谢谢
问题补充:
我是这么写的

Xml代码  
  1. < action   name = "downloadKnowledge"   class = "knowledgeAction"   method = "downloadKnowledge" >
  2. <!-- 指定被下载资源的位置 -->
  3. < param   name = "inputPath" > /upload/ </ param >
  4. < result   name = "success"   type = "stream" >
  5. < param   name = "contentType" > ${contentType} </ param >
  6. < param   name = "inputName" > targetFile </ param >
  7. < param   name = "contentDisposition" > ${filename} </ param >
  8. < param   name = "bufferSize" > 4096 </ param >
  9. </ result >
  10. </ action >

java代码

Java代码  
  1. /**
  2. * 下载Action
  3. * @return
  4. */
  5. public  String downloadKnowledge()  throws  Exception{
  6. checkFormat(download);
  7. return  SUCCESS;
  8. }
  9. /**
  10. * 检查格式,文件后缀
  11. * @param fileName
  12. */
  13. private   void  checkFormat(String fileName){
  14. String[] splitString = fileName.split("//." );
  15. int  length = splitString.length;
  16. String format = null ;
  17. if  (length >  1 ){
  18. format = splitString[length - 1 ];
  19. }
  20. DataFormat df = Enum.valueOf(DataFormat.class , format);
  21. switch  (df){
  22. case  xls:
  23. // contentType设定
  24. contentType = "application/vnd.ms-excel;charset=utf-8" ;
  25. // attachment表示网页会出现保存、打开对话框
  26. filename = "inline; filename="  + fileName;
  27. break ;
  28. case  xlsx:
  29. // contentType设定
  30. contentType = "application/vnd.ms-excel;charset=utf-8" ;
  31. // attachment表示网页会出现保存、打开对话框
  32. filename = "inline; filename="  + fileName;
  33. break ;
  34. case  pdf:
  35. // contentType设定
  36. contentType = "application/pdf;charset=utf-8" ;
  37. // attachment表示网页会出现保存、打开对话框
  38. filename = "inline; filename="  + fileName;
  39. break ;
  40. case  doc:
  41. // contentType设定
  42. contentType = "application/msword;charset=utf-8" ;
  43. // attachment表示网页会出现保存、打开对话框
  44. filename = "inline; filename="  + fileName;
  45. break ;
  46. case  docx:
  47. // contentType设定
  48. contentType = "application/msword;charset=utf-8" ;
  49. // attachment表示网页会出现保存、打开对话框
  50. filename = "inline; filename="  + fileName;
  51. break ;
  52. case  txt:
  53. // contentType设定
  54. contentType = "text/plain;charset=utf-8" ;
  55. // attachment表示网页会出现保存、打开对话框
  56. filename = "inline; filename="  + fileName;
  57. break ;
  58. default :
  59. // contentType设定
  60. contentType = "text/plain;charset=utf-8" ;
  61. // attachment表示网页会出现保存、打开对话框
  62. filename = "inline; filename="  + fileName;
  63. break ;
  64. }
  65. }

在浏览器中直接打开PDF相关推荐

  1. 分享链接在微信内置浏览器中无法打开也无法下载怎么办(Mindjump实现自动跳转浏览器)

    现如今有时候分享链接在微信内置浏览器中无法打开也无法下载,而且转发的话经常会被拦截,一旦被拦截用户在微信中识别二维码就会提示"已停止访问该网页",如此一来对外分享的二维码基本就作废 ...

  2. 浏览器中直接打开apk

    浏览器中直接打开apk,实现了这个功能,但不清楚有什么实际作用 具体操作参见如下步骤: 1 2 3 准备通过  http://192.168.0.177:8888/applinks  这个url链接打 ...

  3. 用java获取360doc页面上的url地址并在浏览器中自动打开

    一.前言 最近在看一些前端的文章360doc,每次选中需要的url,都会弹出一个提示框,然后关闭后又自动转发到另一个页面,让人觉的很烦,于是便有了下面这个想法的产生. 二.java实现获取指定页面ur ...

  4. ie浏览器中没有Adobe PDF Reader的情况下,ie浏览器打不开PDF

    ie浏览器中加载项没有Adobe PDF Reader的情况下,需要安装Acrobat Reader DC软件. 下载Acrobat Reader DC,并且安装 下载地址 安装以后为: 2.重启ie ...

  5. 在网页浏览器中原生显示PDF文件

    在网页中直接显示pdf格式的文件方便阅读.但是如果文件较大加载速度会很慢,另外如果客户端没有安装pdf阅读插件的话,也就看不了了. 这种方式的好处就是不需要转换,直接显示,而且在加载时(高级的浏览器, ...

  6. linux中常用打开pdf文档指令软件

    在linux系统中,常用的打开pdf文档的指令代码 evince xxx.pdf acroread xxx.pdf okular xxx.pdf adobe xxx.pdf

  7. 如何在浏览器中直接打开Word/Excel等Office文档?

    历史背景 随着协调办公的兴起,网页在线编辑文档也越来越广泛,很多大公司也发布了在线Office,但是也存在很多问题.比如桌面版Office就存在一些功能缺失:需要网络随时保持在线.不能保存桌面生成的文 ...

  8. 多端手机网页中直接打开PDF文档

    1. 需求 接到一个需求,客户想在手机端的网页里直接能查看到 pdf 文档,一开始我的思路是加一个<a>标签让他跳转链接到 pdf 文档的地址,经过测试发现在 IOS 系统中,网页跳转之后 ...

  9. eclipse中tomcat能正常启动,在浏览器中不能打开问题

    问题原因:没有在eclipse中tomcat的server location设置到tomcat的安装目录. 解决办法:1.选择server点击右键,选择Open选项,然后在server locatio ...

最新文章

  1. JavaScript Array 对象方法
  2. zookeeper 进入客户端_对 zookeeper 和 dubbo 问题总结
  3. php ping 命令注入,CTF关于ping命令注入问题
  4. 二分查找算法的两种实现方式:非递归实现和递归实现
  5. CentOS Squid 安装配置
  6. 线索化二叉树(代码 、分析 、汇编)
  7. AD域中组织单位和组的区别
  8. 三星1万亿元重金下注,推动AI、5G、半导体等项目的研究
  9. process id linux,userdel:user* is currently used by process id
  10. matlab for 循环中怎么做到只取其中一个数_公益心 码客行(8)—— 循环语句
  11. ctfshow-WEB-web2
  12. 如何利用自己的数据制作社交地图?只显示可视区域内的标注
  13. Microsoft Teams网络慢,卡顿,怎么办?
  14. 无意中学到的,感谢通用
  15. 计算机趣事 英语作文,英语作文100字趣事
  16. 使用docker搭建xss挑战之旅环境,操作步骤配截图。
  17. 银联卡整个pdol电子钱包扣费的过程
  18. 走遍美国 —— 各州及其别名
  19. 三体智能革命_华为郑叶来:AI正由“人工”智能走向真正的人工智能
  20. DELL Inspiron M4010笔记本拆机除尘图解

热门文章

  1. 出海困局 | 国内增长出现瓶颈,大厂的出海“野心”也藏不住了!
  2. 教你实现一个天气实时查询微信小程序
  3. java pecs_JAVA的PECS原则
  4. H5之直播开发之旅总结
  5. 工业数字化供应链协同系统:赋能工业品供应链数智化,提升产业链流通效率
  6. ubuntu20.1 查看apt仓库_管物即管钱!工厂仓库管理,要谨记这12条原则
  7. 现代化养殖场管理系统_ER图_功能图_数据字典_数据库脚本
  8. 使用python+stanfordcorenlp+dependency_parse(依赖句法分析)实现英文长句切分
  9. matplotlib的annotate的箭头类型详解
  10. Cookie和set-cookie