jsp页面:
<a href=\'#\' onclick=onLine(\''+urls[i]+'\') >在线打开</a>
html页面超链接单击打开online函数
var onLine = function(filename){
var param="toolbar=yes,location=yes,menubar=yes,
scrollbars=yes,resizable=yes";
var path = "DocumentCabinetAction!openOnLine.action?
filepath="+encodeURI(filename);
window.open(path,'maxwindow',param);
};
online函数:打开一个新的窗口,path为后台函数,直接输出流到页面,在线打开。这个函数不能异步提交。
//type 为response 返回类型,filename 为要打开的文件名称
if((filename.indexOf(".xls")>0) || (filename.indexOf(".xlsx")>0)){
type = "application/vnd.ms-excel";
}else if(filename.indexOf(".pdf")>0){
type = "application/pdf";
}else if((filename.indexOf(".doc")>0) || (filename.indexOf(".docx")>0)){
type = "application/msword";
}else if(filename.indexOf(".txt")>0){
type = "text/plain";
}else if(filename.indexOf(".ppt") >0){
type = "application/ppt";
}
//response设置返回内容type,outputStream输出
response.setContentType(type);
response.setHeader("Content-disposition","inline;filename="+URLEncoder.encode(filename, "utf-8"));
//ftp读取文件,并放入到输出流中
ftp.retrieveFile(new String(filename.getBytes("GBK"),"ISO-8859-1"), outputStream);
outputStream.flush();
outputStream.close();
注意点:一般下载、在线打开不要使用ajax提交,ajax提交会有问题,页面预览的时候第一次还是会弹出下载/打开对话框,第二次就正常显示了
在线打开的条件是:电脑中有相应的打开软件,不然在线显示不了,要想直接靠浏览器打开,要使用插件,比如dsoframer.ocx,这个插件只能打开word,excel ,代码如下:
<div id="div1" style="width:100%;height:90%;">
<OBJECT id="FramerControl1" codeBase="dsoframer.ocx" style="margin:0px;top:0px;height:700px;width:100%" classid="clsid:00460182-9E5E-11D5-B7C8-B8269041DD57">
<PARAM NAME="_ExtentX" VALUE="16960">
<PARAM NAME="_ExtentY" VALUE="13600">
<PARAM NAME="BorderColor" VALUE="-2147483632">
<PARAM NAME="BackColor" VALUE="-2147483643">
<PARAM NAME="ForeColor" VALUE="-2147483640">
<PARAM NAME="TitlebarColor" VALUE="-2147483635">
<PARAM NAME="TitlebarTextColor" VALUE="-2147483634">
<PARAM NAME="BorderStyle" VALUE="1">
<PARAM NAME="Titlebar" VALUE="0">
<PARAM NAME="Toolbars" VALUE="1">
<PARAM NAME="Menubar" VALUE="0">
</OBJECT>
</div>
//在线打开word,excel path 为全路径,
getWord = function(path){
if(path == null)
{
Ext.Msg.alert('提示', '要打开的文件路径不存在!');
}else if((path.indexOf(".xls") >0) || (path.indexOf(".doc")>0) ){
document.getElementById('FramerControl1').Open(path);
document.getElementById('FramerControl1').ProtectDoc(1,2,"satellite");
//显示修订留痕
document.getElementById('FramerControl1').ShowRevisions(0);
}else{
Ext.Msg.alert('提示', '该格式的文件不能打开!');
}
};
分享到:
相关推荐
本篇文章将深入探讨如何使用Java技术栈,特别是Apache POI和iTextPDF库,来实现doc、xls(包括旧版的Excel 2003和新版本的Excel 2007+)以及txt、图片等多种格式的文件转换为PDF,并且实现在线浏览的功能。...
java实现浏览器在线预览offic(doc、xls、ppt)和pdf文件,本人将例子集成到项目中,已成功。 技术原理:将文件先转换成pdf文件,再将pdf文件转换成swf文件,最后显示在浏览器上。 资源描述:本资源包括swftools...
Java作为一种多用途的编程语言,提供了丰富的库和工具来解析PDF、ZIP、DOC和XLS等格式的文件。下面将详细介绍这些格式的解析方法。 首先,PDF(Portable Document Format)是一种用于存储和交换文档的格式,由Adobe...
这个压缩包"html2pdf_xls_doc.rar"提供了实现这一转换所需的一些关键库,包括Apache POI、iText和Core Renderer。 首先,让我们深入了解一下这些库: 1. **Apache POI**: 这是一个流行的开源Java库,专门用于处理...
5. `DocExport.java`:对于DOC(Microsoft Word)格式,JasperReport本身并不直接支持,但可以通过Apache POI库来实现。开发者需要先将报表导出为RTF(Rich Text Format),然后利用POI将其转化为DOC格式。 在实际...
本篇文章将详细讲解如何使用Apache POI和PDFBox库来读取doc, docx, ppt, pptx, xls, xlsx, pdf以及txt等各类文件的内容。 首先,Apache POI是一个流行的Java API,专门用于处理Microsoft Office格式的文件,如Word...
这是用java写的代码,把doc,ppt,xls,txt等一些文件转换成pdf格式
在Java开发中,有时我们需要提供在线预览功能,让用户能够查看不同类型的文档,如doc、docx、pptx、ppt、xls和xlsx等,而无需下载到本地。要实现这样的功能,一种常见的方法是将这些文件转换为通用的PDF格式进行预览...
标题 "The document was created with Spire.PDF for Java" 提供了一个关键信息,即文档是使用Spire.PDF for Java工具创建或处理的。Spire.PDF for Java是一款由E-iceblue公司开发的PDF库,它允许Java开发者在应用...
Spring Boot本身不直接支持文件预览,但我们可以借助第三方库,如Apache POI用于处理Microsoft Office格式的文件,PDFBox或iText用于处理PDF文件。在`pom.xml`中添加这些依赖: ```xml <groupId>org.apache.poi...
在Java开发中,有时我们需要将不同的文档格式如.docx、.doc、.xlsx、.xls、.ppt转换为PDF格式,以便于统一查看、打印或长期保存。这通常涉及到使用第三方库来完成这样的任务,因为Java标准库并不直接支持这种转换。...
本篇将深入探讨如何使用Java实现PPT、XLS和DOC格式的文件在线预览。 首先,我们要理解这三种文件格式。PPT(PowerPoint)是Microsoft Office套件中的演示文稿格式,用于创建和展示幻灯片。XLS(Excel)则是电子表格...
"Free Spire.Doc for Java" 是一款用于Java平台的文档处理工具,主要专注于处理Microsoft Word文档,例如DOC、DOCX格式。版本3.9.0是该软件的一个特定发行版,可能包含了一些新功能、性能优化或错误修复。在这款库的...
Spire.PDF 和 Spire.DOC 是两个非常重要的软件开发工具包,主要针对.NET开发者,用于处理PDF和DOC格式的文档。这两个库提供了丰富的API,使得程序员能够方便地创建、编辑、转换以及操作PDF和DOC文件。下面我们将分别...
Aspose.Pdf支持将PDF转换为其他格式,如Word(DOC、DOCX)、Excel(XLS、XLSX)、HTML、图片(JPEG、PNG等)和EPUB。这通过`Document`对象的`save()`方法实现,只需提供不同的保存格式作为参数即可。 4. PDF到Word...
除了Jacob,还有其他Java库如Apache POI和iText可以用来处理这种转换,但它们通常不直接支持与Office的交互,而是通过解析和重新构建文档内容来实现转换。这种方式可能不适用于处理复杂的样式和格式。 对于HTML转换...
本主题主要关注如何使用JAVA编程语言将常见的办公软件格式,如Word(.doc)、Excel(.xls)、PowerPoint(.ppt)以及图像文件(如.tif)转换为统一的PDF格式。PDF(Portable Document Format)因其跨平台兼容性和...
Apache POI是一个流行的库,主要用于处理Microsoft Office格式的文件,如Word(.doc/.docx)和Excel(.xls/.xlsx)。在这个场景中,我们将探讨如何使用Apache POI结合其他工具库来实现Word到PDF的转换。 首先,...
在描述中提到的"POI导出.pdf,.doc,.xls,.jpg四种格式通用组件",意味着该组件不仅限于处理Microsoft Office文档,还支持生成PDF和图像文件(如.jpg),实现了多种文件格式间的转换和导出。 1. **Apache POI 概述**...
### JAVA读取Word、Excel、PowerPoint及PDF文件方法详解 #### 一、概述 在企业级应用开发中,经常需要处理Office文档(如Word、Excel、PowerPoint)以及PDF文件。这些文件格式广泛用于存储数据和信息。本文将详细...