相关org.jodconverter的pom依赖可参考文件处理之一中的依赖,转换方法如下:
import org.apache.tomcat.util.http.fileupload.IOUtils;
import org.jodconverter.DocumentConverter;
@Value("${openfile.localPath}")
private String openfile;
@Autowired
private DocumentConverter converter;
//tbPicture 需要转换的文件
public void convertToHtml(TbPicture tbPicture, HttpServletResponse response, HttpServletRequest request) {
File file = new File(tbPicture.getLocalPath());
try {
//转换之后文件生成的地址
File newFile = new File(openfile);
if (!newFile.exists()) {
newFile.mkdirs();
}
//文件转化
String fileName = tbPicture.getFileName();
if (!fileName.endsWith("html")) {
fileName = fileName.split("\\.")[0].concat(".html");
converter.convert(file).to(new File(openfile + fileName)).execute();
}
//使用response,将pdf文件以流的方式发送的前段
response.setCharacterEncoding("UTF-8");
ServletOutputStream outputStream = response.getOutputStream();
// 读取文件
InputStream in = new FileInputStream(new File(openfile + fileName));
// copy文件
int i = IOUtils.copy(in, outputStream);
System.out.println(i);
in.close();
outputStream.close();
} catch (Exception e) {
log.error("转换失败", e);
e.printStackTrace();
}
}