jsp 展示服务器pdf文件,pdf在线预览_jsp实现pdf在线预览功能

本文介绍了如何使用jsp实现pdf在线预览功能,包括将pdf文件存储在webroot的contentfile目录下,创建用于存储预览信息的实体类,以及通过Servlet处理文件读取和响应。代码示例展示了关键步骤,如文件路径处理、转码和文件流的读写。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要 腾兴网为您分享:jsp实现pdf在线预览功能,钻石星球,桌面时钟,学堂在线,新东方等软件知识,以及新游手柄游戏厅,qq6.2,硬盘坏道,录音盒,番茄花园rom,x架子,内蒙古科协,陕西交管12123,中国诗词大会诗词汇总,一键恢复系统,七散,成都市环保局网站,亲宝网儿歌连续,模拟人生4注册表,快资讯等软件it资讯,欢迎关注腾兴网。pdf在线预览功能,具体实现: 1、contentfile 是webroot目录下的文件夹 待预览的文件上传到此文件夹。 2、Specificate 存放预览文件信息的实体类(表)。 3、 复制代码 代码示例: spath + \\ +...

pdf在线预览功能,具体实现:

1、contentfile 是webroot目录下的文件夹 待预览的文件上传到此文件夹。

2、Specificate 存放预览文件信息的实体类(表)。

3、

复制代码 代码示例:

spath + "\\" + specificate.getTitle(); 路径加 文件名取到文件。

public void preview() {

String spath = ServletActionContext.getServletContext().getRealPath("")

+ "\\contentfile\\";

specificate = (Specificate) baseService.getById(Specificate.class, id);

String fileName = specificate.getTitle();

String fileNameWithPath = spath + "\\" + specificate.getTitle();

log.info("文件名=" + fileName);

// File file = new File(fileName);

try {

// 转码(UTF-8-->GB2312),现在环境下的编码是UTF-8,但服务器操作系统的编码是GB2312

if (fileName != null && fileName.trim().length() > 0) {

fileName = URLEncoder.encode(fileName, "GB2312");

fileName = URLDecoder.decode(fileName, "ISO8859-1");

} else {

fileName = "moren.pdf";

fileNameWithPath = spath + "\\" + fileName;

}

File file = new File(fileNameWithPath);

FileInputStream fileinputstream = new FileInputStream(file);

long l = file.length();

int k = 0;

byte abyte0[] = new byte[65000];

getResponse().setContentType("application/pdf");

getResponse().setContentLength((int) l);

getResponse().setHeader("Content-Disposition",

"inline; filename=" + fileName);

while ((long) k < l) {

int j;

j = fileinputstream.read(abyte0, 0, 65000);

k += j;

getResponse().getOutputStream().write(abyte0, 0, j);

}

fileinputstream.close();

} catch (IOException e) {

log.error("打开失败,文件路径为:" + fileNameWithPath, e);

e.printStackTrace();

// return this.ajaxText("打开失败");

}

// return "";

}

2,jsp页面

复制代码 代码示例:

3,script 代码

复制代码 代码示例:

function viewPDF(cur){

// alert($(cur).attr('id'));

var   fileid = $(cur).attr('id');

var strURL = "preview.action?id="+fileid;

var sheight = screen.height-70;

var swidth = screen.width-10;

var winoption="left=0,top=0,height="+sheight+",width="+swidth+",toolbar=yes,menubar=yes, location=yes,status=yes,scrollbars=yes,resizable=yes";

var tmp=window.open(strURL,'',winoption);

}

相关推荐

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值