资源简介
在springboot+vue框架中使用element的上传控价实现附件的上传、下载,并结合openoffice实现附件的在线预览
代码片段和文件信息
package jpcd.soft.sys.knowledge.utils;
import org.springframework.beans.factory.annotation.Value;
import java.io.*;
import java.util.Date;
import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.artofsolving.jodconverter.OfficeDocumentConverter;
import org.artofsolving.jodconverter.office.DefaultOfficeManagerConfiguration;
import org.artofsolving.jodconverter.office.OfficeManager;
public class Doc2PdfUtil {
//openOffice 安装路径
@Value(“${openOffice.LINUX_PATH}“)
public static String LINUX_PATH;
@Value(“${openOffice.WINDOWS_PATH}“)
public static String WINDOWS_PATH=“C:/Program Files (x86)/OpenOffice 4“;
@Value(“${openOffice.MAC_PATH}“)
public static String MAC_PATH;
//openOffice 文件保存路径
public static String LINUX_FILE_PATH=“/home/openOfficeToPdfPath“;
public static String WINDOWS_FILE_PATH=“e:/openOfficeToPdfPath“;
public static OfficeManager officeManager;
/**
* 使Office2003-2007全部格式的文档(.doc|.docx|.xls|.xlsx|.ppt|.pptx) 转化为pdf文件
*
* @param inputFilePath
* 源文件路径,如:“e:/test.docx“
* @param outputFilePath
* 目标文件路径,如:“e:/test_docx.pdf“
* @return
*/
public boolean openOfficeToHTML(String inputFilePath String outputFilePath) {
return office2Html(inputFilePath outputFilePath);
}
/**
* 根据操作系统的名称,获取OpenOffice.org 3的安装目录
* 如我的OpenOffice.org 3安装在:C:/Program Files (x86)/OpenOffice.org 3
*
* @return OpenOffice.org 3的安装目录
*/
public static String getOfficeHome() {
String osName = System.getProperty(“os.name“);
System.out.println(“操作系统名称:“+osName);
if (Pattern.matches(“Linux.*“ osName)) {
return LINUX_PATH;
} else if (Pattern.matches(“Windows.*“ osName)) {
return WINDOWS_PATH;
} else if (Pattern.matches(“Mac.*“ osName)) {
return MAC_PATH;
}
return null;
}
/**
* 根据操作系统的名称 获取文件保存路径
*/
public static String getFilePath() {
String osName = System.getProperty(“os.name“);
System.out.println(“操作系统名称:“+osName);
if (Pattern.matches(“Linux.*“ osName)) {
return LINUX_FILE_PATH;
} else if (Pattern.matches(“Windows.*“ osName)) {
return WINDOWS_FILE_PATH;
}
return null;
}
/**
* 连接OpenOffice.org 并且启动OpenOffice.org
*
* @return
*/
public OfficeManager getOfficeManager() {
DefaultOfficeManagerConfiguration config = new DefaultOfficeManagerConfiguration();
// 获取OpenOffice.org 3的安装目录
String officeHome = getOfficeHome();
config.setOfficeHome(officeHome);
// 启动OpenOffice的服务
System.out.println(“启动OpenOffice的服务“);
OfficeManager officeManager = config.buildOfficeManager();
officeManager.start();
return officeManager;
}
/**
* 转换文件
*
* @param inpu
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6222 2019-01-14 20:25 springboot+element+vue之附件管理及在线预览\auve前台js相关方法.txt
文件 9844 2019-01-12 17:19 springboot+element+vue之附件管理及在线预览\Doc2PdfUtil.java
文件 6153 2019-01-14 20:23 springboot+element+vue之附件管理及在线预览\附件上传、下载及删除接口方法.txt
目录 0 2019-01-14 20:26 springboot+element+vue之附件管理及在线预览
----------- --------- ---------- ----- ----
22219 4
- 上一篇:DB62 90度弯角母座
- 下一篇:MSP430F149 read SD card
相关资源
- 2019最新vue三套实战视频干货
- 基于vue开发的树形菜单
-
typesc
riptvue开发的日历组件使用swi - Vue Element UI + OSS实现上传文件功能
- 在Vue 中实现循环渲染多个相同echart
- canvas涂鸦.rar
- 基于Vue的星级评分功能
- Vue Django实现电子商务网站
- VUE + bpmn 流程设计器 demo
- vue自定义过滤器,例如给文字加颜色
- vue cli引入微信sdk完成微信接口调用—
- Vue 项目构建与开发入门
- SpringBootVue全栈开发实战+整本代码.t
- Vue核心技术Vue+Vue-Router+Vuex+SSR实战精讲
- Vue的js文件vue-resource.js以及Axios.js
- webpack 中使用vue开发项目
- Vue.js API
- 学生管理后台系统模板
- dropload多个+js+css源码,可直接套用
- vue树, vue-treevue写的树形结构,包括
- Vue全家桶+SSR+Koa2全栈开发美团网
- Vue版 Web后台页面模板
- Vue集成Bmap离线地图-打dist包的api.js资
- Bmap-offline_vue的api.js资源
- vue省市区组件,mint-ui封装的省市区组
- vue.js跟vue-resource.js
- Vue日历组件,周和月的显示模式
- 一个nuxt版的 vue-quill-editor demo
- Vue全家桶+SSR+Koa2全栈开发美团网无快
- div+mui+vue.js 制作问卷调查单页造的j
评论
共有 条评论