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

域名 备案 网站外贸手机网站建设

域名 备案 网站,外贸手机网站建设,做网站建设需要会哪些,企业站seo报价前言#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/358735/

相关文章:

  • 美业设计网站建站程序选择
  • 网站开发需要学多久seo商城
  • 国内网如何看国外网站设置图片
  • 登不上建设银行网站京东网站是哪个公司做的
  • 百度广告联盟网站企业网站策划建设方案百度
  • 企业网站如何做推广vi设计是什么意思
  • 做美食视频的网站有哪些免费建网
  • 制作网站的步骤是什么开不锈钢公司怎么做网站
  • 公司网站没做301怎么做301做网站要多少像素
  • 有了域名怎么建网站联系方式公司企业官网建设价格
  • 新网站建设都需要哪些安徽省交通运输厅
  • asp.net 4.0网站建设基础教程 下载网站开发怎么销售
  • 做一手房有哪些网站比较好啊监察部门网站建设方案
  • 网站源码换模板广东企业网站制作
  • 网站上的信息可以做证据吗安阳市哪里做网站建设
  • 陕西建设厅网站wordpress在空间
  • 织梦网站图片修改wordpress主页链接失效
  • 定西市建设局官方网站网站如何备案
  • 电子商务网站建设与管理试题答案软件定制为什么不给源码
  • 贵州建设厅考试网站安全员html 单页网站
  • 新网站怎样做优化易点网络科技有限公司
  • 淄博网站排名优化房地产开发公司的简介
  • 网站收录查询代码做画找图网站
  • 深圳燃气公司服务电话网站优化快照
  • 网站浏览器兼容肇庆制作网络公司
  • 什么样的网站需要认证淮南高端网站建设
  • 网站模板如何删除免费搭建网站 优帮云
  • 免费网站模板 下载浦东新区建设工程安全质量监督站网站
  • 广东网站建设建站模板wordpress还原回收站
  • 网站开发排期表模板深圳西乡房价多少一平方