文章目录

  • 前言
  • 一、java代码实现
  • 二、坑爹问题
    • 1.找不到方法
    • 2.NoSuchMethodError getPackageRelationship
    • 3.中文乱成这样,是什么鬼

前言

word内容预览步骤:

  1. word 数据读取
  2. word 内容数据格式保留

注:本篇word基于2007 docx格式(doc格式没写),且文件保存地址为minio服务器。

一、java代码实现

    public String perviewDocx(String bucket, String objectName) throws Exception {BizPreconditions.checkArgumentNoStack(this.bucketExists(bucket), "目录" + bucket + "不存在!");String content;// minio读取word到流InputStream in = this.getObject(bucket, objectName);// 实现关键代码// docx 内容转html输出XWPFDocument document = new XWPFDocument(in);XHTMLOptions options = XHTMLOptions.create();ByteArrayOutputStream baos = new ByteArrayOutputStream();XHTMLConverter.getInstance().convert(document, baos, options);content = new String(baos.toByteArray(), "utf-8");baos.close();// 读取纯文本,带换行
//      XWPFWordExtractor extractor = new XWPFWordExtractor(document);
//      content = extractor.getText();
//      System.out.println(content);in.close();return content;}

pom

     <dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>org.apache.poi.xwpf.converter.core</artifactId><version>1.0.6</version></dependency><dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>org.apache.poi.xwpf.converter.xhtml</artifactId><version>1.0.6</version></dependency><dependency><groupId>org.apache.xmlbeans</groupId><artifactId>xmlbeans</artifactId><version>2.6.0</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>ooxml-schemas</artifactId><version>1.3</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.14</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml-schemas</artifactId><version>3.14</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.14</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-scratchpad</artifactId><version>3.14</version></dependency>

二、坑爹问题

1.找不到方法

.convert方法飘红

XHTMLConverter.getInstance().convert(document, baos, options);

manven引入org.apache.poi.xwpf.converter.core、org.apache.poi.xwpf.converter.xhtml


2.NoSuchMethodError getPackageRelationship

poi版本不对 改为3.14


3.中文乱成这样,是什么鬼

得到结果中文全部被转为⑧无消形式。
不用担心,这个前端渲染的时候就是中文啦!

poi 读取word内容转html在线预览相关推荐

  1. java通过POI和jacob实现word文档的在线预览和下载

    通过POI和jacob可以实现word文档的在线预览和下载. 首先,引入以下maven依赖. <dependency><groupId>org.apache.poi</g ...

  2. java flexpaper_java web word文件 pdf文件在线预览源码(flexpaper)

    [实例简介]java web word文件 pdf文件在线预览源码 经过测试 [实例截图] [核心代码] BrowsenOnline html, body{ height:100%; } body { ...

  3. 前端ppt\word等等文件实现在线预览功能

    前端ppt\word等等文件实现在线预览功能 方法1:https://view.xdocin.com/view?src=你的文档地址 10天免费 方法2:https://view.officeapps ...

  4. 使用PageOffice实现文档(word,excel,pdf)在线预览编辑

    最近发现一款不错的插件的PageOffice,地址是:http://www.zhuozhengsoft.com/Technical/ 他可以实现word,excel.pdf在线预览以及在线编辑.虽然商 ...

  5. SpringBoot实现本地上传Word文档并在线预览

    所需依赖 <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</art ...

  6. 关于论坛实现pdf,word等文档在线预览的功能探讨

    论坛引擎:Discuz! 2.5 工具:flexpaper1.5.6 二次开发版本 本文主要探讨大体的思路及相关技术难点问题,属个人工作之余的一些小小开发,仅供探讨,嘿嘿... 实现效果如图: 论坛为 ...

  7. java poi预览word文档_apache poi操作office文档----java在线预览txt、word、ppt、execel,pdf代码...

    在页面上显示各种文档中的内容.在servlet中的逻辑 word: BufferedInputStream bis = null; URL url = null; HttpURLConnection ...

  8. poi ppt转换为html,实现在线预览

    ppt转换为html的原理就是将ppt转换为图片 import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics2 ...

  9. java word在线预览_java 生成word文档并且在线预览的问题

    富文本? 用iText或者PD4ML直接转换为pdf [code="java"] String outputFile = "D:/Test/demo_3.pdf" ...

  10. pdf.js在h5端访问图片服务器地址携带token防盗链无法读取问题,兼容安卓ios在线预览

    1.实现方法为前端代码和后台Java代码结合 1.后端代码 @Controller @RequestMapping("/productController") public cla ...

最新文章

  1. IIC通信控制的AD5259------在调试过程中遇到的奇葩问题
  2. Nested Mappings
  3. 我在攻克机器学习硕士学位的那些年
  4. CVPR 2018 | 腾讯AI Lab入选21篇论文详解
  5. SNF快速开发平台2019-权限管理模型简介-权限都在这里
  6. 判断ABAP software component是否可修改及可extend的API
  7. 一个有意思的CStatic和combobox以及Cedit控件结合使用
  8. html分类代码查询,html标签元素分类(示例代码)
  9. Flash和HTML5那点事:后者拿什么取代Flash?
  10. 爆料人透露苹果正开发可折叠iPhone:两块独立屏幕连接 无刘海
  11. 标准C程序设计七---72
  12. KETTLE集群搭建
  13. 在低版本浏览器内核中适配replaceAll
  14. Eclipse之各个版本的区别
  15. Win10屏保设置详细教程
  16. 网页音乐视频不让下载怎么办
  17. Python3网络爬虫(十三):王者荣耀那些事!(Fiddler之手机APP爬取)
  18. Android App 图表制作之--ichartJs
  19. 声音传感器模块的改进
  20. 了解痘痘起因才能彻底告别痘痘烦恼

热门文章

  1. 串口转usb驱动c语言程序,电脑中USB转串口如何正确安装对应的驱动程序
  2. html代码实现全国地图分布,html5 svg浙江地图map省市地区代码
  3. 软件测试中的测试报告
  4. singleTask和startActivityResult
  5. Git版本控制管理(七)--提交和查看提交历史
  6. 使用AForge录制视频
  7. Tomcat 修改启动端口号
  8. SSM中拦截器和过滤器
  9. 又是灵格斯导致软件自动关闭
  10. 面试题,微信朋友圈的“赞”和“评论”为啥是隐藏操作的?