导航:首页 > 文件教程 > 在线word预览

在线word预览

发布时间:2025-08-14 03:10:03

『壹』 如何用java实现word、excel等文档在线预览

java实现办公文件在线预览功能是一个大家在工作中也许会遇到的需求,网上有些公司专门提供这样的服务,不过需要收费;如果想要免费的,可以用openoffice,实现原理就是:

通过第三方工具openoffice,将word、excel、ppt、txt等文件转换为pdf文件流;

当然如果装了Adobe Reader XI,那把pdf直接拖到浏览器页面就可以直接打开预览,前提就是浏览器支持pdf文件浏览。

本文主要介绍通过poi实现word、excel、ppt转pdf流,这样就可以在浏览器上实现预览了。

1.到官网下载Apache OpenOffice 安装包,安装运行。

不同系统的安装方法,自行网络,这里不做过多说明。

2.再项目的pom文件中引入依赖

<!--openoffice--><dependency><groupId>com.artofsolving</groupId><artifactId>jodconverter</artifactId><version>2.2.1</version></dependency>

3.将word、excel、ppt转换为pdf流的工具类代码

importcom.artofsolving.jodconverter.DefaultDocumentFormatRegistry;importcom.artofsolving.jodconverter.DocumentConverter;importcom.artofsolving.jodconverter.DocumentFormat;importcom.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;importcom.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;importcom.artofsolving.jodconverter.openoffice.converter.;importjava.io.*;importjava.net.HttpURLConnection;importjava.net.URL;importjava.net.URLConnection;/***文件格式转换工具类**@authortarzan*@version1.0*@sinceJDK1.8*/publicclassFileConvertUtil{/**默认转换后文件后缀*/_SUFFIX="pdf";/**openoffice_port*/_PORT=8100;/***方法描述office文档转换为PDF(处理本地文件)**@paramsourcePath源文件路径*@paramsuffix源文件后缀*@returnInputStream转换后文件输入流*@authortarzan*/(StringsourcePath,Stringsuffix)throwsException{FileinputFile=newFile(sourcePath);InputStreaminputStream=newFileInputStream(inputFile);returncovertCommonByStream(inputStream,suffix);}/***方法描述office文档转换为PDF(处理网络文件)**@paramnetFileUrl网络文件路径*@paramsuffix文件后缀*@returnInputStream转换后文件输入流*@authortarzan*/(StringnetFileUrl,Stringsuffix)throwsException{//创建URLURLurl=newURL(netFileUrl);//试图连接并取得返回状态码URLConnectionurlconn=url.openConnection();urlconn.connect();HttpURLConnectionhttpconn=(HttpURLConnection)urlconn;inthttpResult=httpconn.getResponseCode();if(httpResult==HttpURLConnection.HTTP_OK){InputStreaminputStream=urlconn.getInputStream();returncovertCommonByStream(inputStream,suffix);}returnnull;}/***方法描述将文件以流的形式转换**@paraminputStream源文件输入流*@paramsuffix源文件后缀*@returnInputStream转换后文件输入流*@authortarzan*/(InputStreaminputStream,Stringsuffix)throwsException{ByteArrayOutputStreamout=newByteArrayOutputStream();=newSocketOpenOfficeConnection(OPENOFFICE_PORT);connection.connect();DocumentConverterconverter=new(connection);=();DocumentFormattargetFormat=formatReg.getFormatByFileExtension(DEFAULT_SUFFIX);DocumentFormatsourceFormat=formatReg.getFormatByFileExtension(suffix);converter.convert(inputStream,sourceFormat,out,targetFormat);connection.disconnect();(out);}/***方法描述outputStream转inputStream**@authortarzan*/(finalOutputStreamout)throwsException{ByteArrayOutputStreambaos=(ByteArrayOutputStream)out;returnnewByteArrayInputStream(baos.toByteArray());}publicstaticvoidmain(String[]args)throwsIOException{//convertNetFile("http://172.16.10.21/files/home/upload/department/base/.doc",".pdf");//convert("c:/Users/admin/Desktop/2.pdf","c:/Users/admin/Desktop/3.pdf");}}

4.serve层在线预览方法代码

/***@Description:系统文件在线预览接口*@Author:tarzan*/publicvoidonlinePreview(Stringurl,HttpServletResponseresponse)throwsException{//获取文件类型String[]str=SmartStringUtil.split(url,"\.");if(str.length==0){thrownewException("文件格式不正确");}Stringsuffix=str[str.length-1];if(!suffix.equals("txt")&&!suffix.equals("doc")&&!suffix.equals("docx")&&!suffix.equals("xls")&&!suffix.equals("xlsx")&&!suffix.equals("ppt")&&!suffix.equals("pptx")){thrownewException("文件格式不支持预览");}InputStreamin=FileConvertUtil.convertNetFile(url,suffix);OutputStreamoutputStream=response.getOutputStream();//创建存放文件内容的数组byte[]buff=newbyte[1024];//所读取的内容使用n来接收intn;//当没有读取完时,继续读取,循环while((n=in.read(buff))!=-1){//将字节数组的数据全部写入到输出流中outputStream.write(buff,0,n);}//强制将缓存区的数据进行输出outputStream.flush();//关流outputStream.close();in.close();}

5.controler层代码

@ApiOperation(value="系统文件在线预览接口bytarzan")@PostMapping("/api/file/onlinePreview")publicvoidonlinePreview(@RequestParam("url")Stringurl,HttpServletResponseresponse)throwsException{fileService.onlinePreview(url,response);}

链接:blog.csdn.net/weixin_40986713/article/details/109527294

『贰』 前端怎么在线预览word文件ofd文件在线预览呢

对于前端开发者来说,想要在手机(移动端)上预览Word文件(ofd格式),即使没有后端支持,也是完全可以实现的。只需要借助特定的工具和服务。只需一行JavaScript代码,你就能轻松集成到项目中。预览的实现方法相当直接,通过将你的Word文件链接拼接到预览地址上,例如:

预览地址的基本格式是:http://vw.usdoc.cn/?src= 文件的URL,比如预览 "三好学生申请书.docx" 的链接为:http://vw.usdoc.cn/?src=https://zh.usdoc.cn/view/三好学生申请书.docx

这样操作后,你将得到如下所示的在线预览效果:

ofd在线预览的实际展示

如果你需要处理更多文档格式,如Word、PDF等,usdoc.cn提供了丰富的在线预览功能,可以参考他们的服务进行操作。前端开发者无需过于担心格式兼容性问题,usdoc.cn已经为你做好了底层处理。

阅读全文

与在线word预览相关的资料

热点内容
mm003网站换哪个网址了 浏览:457
网站怎么做到批量发新闻 浏览:123
手机陌陌聊天文件是哪个 浏览:566
小米如何切换4g网络制式 浏览:845
如何将文件隐藏到图片 浏览:278
泉州哪些租房子app靠谱 浏览:800
少儿编程是什么行业 浏览:768
纯小白怎么开始学编程 浏览:659
微信多次验证请求 浏览:557
wps文件咋发微信 浏览:352
110的阶乘怎么编程 浏览:266
从qq里怎么传文件 浏览:285
jdg格式文件怎么转cad 浏览:949
苹果手机怎么调成墨屏 浏览:205
有什么编程问题群 浏览:34
plc的st编程是什么 浏览:488
美团骑手app如何导航送货 浏览:663
APP联系过的域什么意思 浏览:33
编程g198是什么指令 浏览:300
什么都不懂咋学编程 浏览:304

友情链接