当前位置: 首页 > news >正文

排行榜网站物流公司前十名排行榜

排行榜网站,物流公司前十名排行榜,毕业设计做音乐网站,WordPress默认头像修改方法前言#xff1a;在很多时候我们都需要到项目中导入word文档#xff0c;但是后期再次在前段显示这个文档的时候前端往往需要的是html格式的#xff0c;所以这个时候就会提出一个需求#xff1a; 你们存文档的时候能不能存成html格式的#xff1f; 于是这篇文章的内容就可以…前言在很多时候我们都需要到项目中导入word文档但是后期再次在前段显示这个文档的时候前端往往需要的是html格式的所以这个时候就会提出一个需求 你们存文档的时候能不能存成html格式的  于是这篇文章的内容就可以满足这个需求我是通过MultiPartFile 类来实现的上代码一、首先导入需要的依赖包org.apache.poipoi-scratchpad3.17org.apache.poipoi-ooxml3.17fr.opensagres.xdocreportfr.opensagres.xdocreport.converter.docx.xwpf2.0.1二、编写代码package com.lmt.service.file;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import java.util.UUID;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import javax.xml.transform.OutputKeys;import javax.xml.transform.Transformer;import javax.xml.transform.TransformerException;import javax.xml.transform.TransformerFactory;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.StreamResult;import org.apache.poi.hwpf.HWPFDocument;import org.apache.poi.hwpf.converter.PicturesManager;import org.apache.poi.hwpf.converter.WordToHtmlConverter;import org.apache.poi.hwpf.usermodel.PictureType;import org.apache.poi.util.IOUtils;import org.apache.poi.xwpf.usermodel.XWPFDocument;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;import org.springframework.web.multipart.MultipartFile;import org.w3c.dom.Document;import fr.opensagres.poi.xwpf.converter.core.ImageManager;import fr.opensagres.poi.xwpf.converter.xhtml.XHTMLConverter;import fr.opensagres.poi.xwpf.converter.xhtml.XHTMLOptions;Componentpublic class WordToHtml {private static final Logger logger LoggerFactory.getLogger(WordToHtml.class);//转换的方法public File convert(MultipartFile file) {//获得文件的名字String filename file.getOriginalFilename();//获得文件的扩展名String suffixfilename.substring(filename.lastIndexOf(.));String newNameUUID.randomUUID().toString();// TODO 需要保存在一个新的位置//将文件保存在D:/test/文件下File convFile new File(D:/test/ newName suffix);FileOutputStream fos null;try {//创建文件convFile.createNewFile();fos new FileOutputStream(convFile);fos.write(file.getBytes());} catch (IOException ex) {logger.error(上传文件出错, ex);return null;} finally {IOUtils.closeQuietly(fos);}// 输入文件名的所在文件夹// 加上反斜杠String parentDirectory convFile.getParent();if (!parentDirectory.endsWith(\\)) {parentDirectory parentDirectory \\;}if (filename.endsWith(.docx)) {return docxConvert(parentDirectory, convFile.getAbsolutePath(),newName);} else if (filename.endsWith(.doc)) {return docConvert(parentDirectory, convFile.getAbsolutePath(),newName);} else {logger.error(不支持的文件格式);return null;}}private File docxConvert(String parentDirectory, String filename,String newName) {try {XWPFDocument document new XWPFDocument(new FileInputStream(filename));XHTMLOptions options XHTMLOptions.create().setImageManager(new ImageManager(new File(parentDirectory), UUID.randomUUID().toString())).indent(4);FileOutputStream out new FileOutputStream(new File(parentDirectory newName .html));XHTMLConverter.getInstance().convert(document, out, options);return new File(parentDirectory newName .html);} catch (IOException ex) {logger.error(word转化出错, ex);return null;}}private File docConvert(String parentDirectory, String filename,String newName) {try {HWPFDocument document new HWPFDocument(new FileInputStream(filename));WordToHtmlConverter wordToHtmlConverter new WordToHtmlConverter(DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument());// converter默认对图片不作处理需要手动下载图片并嵌入到html中wordToHtmlConverter.setPicturesManager(new PicturesManager() {Overridepublic String savePicture(byte[] bytes, PictureType pictureType, String s, float v, float v1) {String imageFilename parentDirectory ;String identityUUID.randomUUID().toString();File imageFile new File(imageFilename, identitys);imageFile.getParentFile().mkdirs();InputStream in null;FileOutputStream out null;try {in new ByteArrayInputStream(bytes);out new FileOutputStream(imageFile);IOUtils.copy(in, out);} catch (IOException ex) {logger.error(word转化出错, ex);} finally {if (in ! null) {IOUtils.closeQuietly(in);}if (out ! null) {IOUtils.closeQuietly(out);}}return imageFile.getName();}});wordToHtmlConverter.processDocument(document);Document htmlDocument wordToHtmlConverter.getDocument();ByteArrayOutputStream out new ByteArrayOutputStream();DOMSource domSource new DOMSource(htmlDocument);StreamResult streamResult new StreamResult(out);TransformerFactory tf TransformerFactory.newInstance();Transformer serializer tf.newTransformer();serializer.setOutputProperty(OutputKeys.ENCODING, UTF-8);serializer.setOutputProperty(OutputKeys.INDENT, yes);serializer.setOutputProperty(OutputKeys.METHOD, html);serializer.transform(domSource, streamResult);out.close();String result new String(out.toByteArray());FileWriter writer new FileWriter(parentDirectory newName .html);writer.write(result);writer.close();} catch (IOException | TransformerException | ParserConfigurationException ex) {logger.error(word转化出错, ex);}return new File(parentDirectory newName .html);}/*** 将上传的Word文档转化成HTML字符串* param attachfile* return*/public String convertToHtml(MultipartFile attachfile) {String wordContent ;// 将Word文件转换为htmlFile file convert(attachfile);// 读取html文件if (file ! null) {return 文件转换成功}return 文件转换失败;}代码的含义已经在代码行的注释上有了哪里有问题欢迎大家随时在评论下方留言
http://www.huolong8.cn/news/75310/

相关文章:

  • 衡阳网站制作自适应网站建设选哪家
  • 镇江高端网站建设工作室太原网站上排名
  • 南京做网站优化哪家好表白网
  • 吉林市网站制作郑州市建网站
  • 精品课程网站建设内容惠州企业建站系统
  • 学网站建设难吗网页视频下载快捷指令库
  • 网站程序和数据库网站开发需求ppt
  • 建筑类企业网站模板下载品牌网站建设968
  • 什么是网站开发流程网站建设审批表
  • 购物网站建设论文姜堰区网站建设
  • 手机网站二级导航菜单教育企业网站源码
  • 蒙自做网站的公司湖南门户网站建设
  • 模板网站的优势有哪些昆山企业网站建设
  • 医疗手机网站开发免费注册个人邮箱申请
  • 深圳微信建网站未来做哪些网站致富
  • 太平洋建设集团网站php电影网站开发
  • 网站关键词优化推广哪家快河南建设监理协会网站6
  • 精通网站建设电子档百度智能云网站建设
  • 石家庄网站制作费用wordpress整站数据
  • 房山网站建设百度手机助手网页
  • 网站建设基础知识文化传媒公司广告宣传
  • 什么叫门户类网站施工企业环境管理体系
  • 网站解除域名绑定门户网站的概念
  • 做软件开发视频网站徐州做网站建设的公司
  • 深圳网站建设优化凡科建站收费价目表
  • 网站设计毕业设计论文网站建设费开票税收代码
  • 东莞企石网站建设网站建议公司
  • 福州建网站,做网页大理装饰公司做网站
  • 代码网站有哪些虚拟主机哪里好
  • 小程序网站开发太原山东济宁网站建设设计