分享

中国Linux公社 -viewtopic-Servlet直接打开pdf、doc、xls等文件。

 昵称8635 2006-06-15
setContentType设置MIME类型,Acrobat PDF文件为"application/pdf",WORD文件为:"application/msword",EXCEL文件为:"application/vnd.ms-excel"。
setHeader设置打开方式,具体为:inline为在浏览器中打开,attachment单独打开。

详细参考:
如何用 servlet 打开非 HTML 格式的文档http://www-900.ibm.com/developerWorks/cn/java/jw-tips/tip094/index.shtml

以打开EXCEL文件为例,具体代码如下:
代码:
String sFileName = "test.xls";
resp.setStatus(200);
resp.setContentType("application/vnd.ms-excel");
resp.setHeader("Content-disposition", "inline;filename=\"" + sFileName + "\";");
ServletOutputStream sos = resp.getOutputStream();
sFileName = "Files/" + sFileName;
log("sFileName = " + sFileName);
FileInputStream fis = new FileInputStream(sFileName);
BufferedOutputStream bos = new BufferedOutputStream(sos);
byte[] bytes = new byte[8192];
for (int i=fis.read(bytes); i>0; i=fis.read(bytes))
{
   bos.write(bytes, 0, i);
}
fis.close();
sos.close();
bos.close();

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多