QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2950|回复: 1

Servlet直接打开pdf、doc、xls等文件。

[复制链接]
发表于 2003-6-7 23:44:44 | 显示全部楼层 |阅读模式
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文件为例,具体代码如下:
[code:1]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();
[/code:1]
发表于 2004-11-1 13:29:11 | 显示全部楼层
有机会要亲自试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-16 16:42 , Processed in 0.068096 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表