word转html java代码_用java实现word转html
由于项目需要,要完成将上传的word文件转成html文件的功能。在网上搜了一下,大致有3种方法:1、用jacob实现 2、用poi实现 3、用openoffice实现。
从网上来看好像jacob用的人最多,我就选择了这种方法来做。需要引入jacob.jar jar包,并且jar包还要调用jacob.dll文件,需要事先把jacob.dll文件放到以下3处地方:C:\Windows\System32 目录下,安装的jdk文件夹下的bin目录中,以及jre文件夹下的bin目录(注意一定是你这个项目运行所用到的jdk和jre,如果你的机器上装有多个,首先你要确认清楚放到哪个中)。编写程序,运行通过,达到了想要的效果,生成了html文件,同时还生成了一个文件夹,里边放了若干文件,包括所含的源图片。如果你的文档里包含图片的话要注意生成的html中的图片的src路径默认的是放图片的文件夹和生成的html文件要放到同样的路径中,这样才能找得到图片,否则图片不能加载到html中。介于这个原因,我决定不把html文件中所含字符串存入数据库,而是把htnl的链接地址存入数据库,这样根据这个链接加载的html就可正确的显示图片。
接下来悲剧的事情发生了。项目要布在linux服务器上,这意味着我之前的努力全白费了。特此声明, jacob 只支持windows服务器,不支持linux,.dll文件也是windows所特有的!所以大家在选择采用何种方式时一定要结合自己要用的操作系统。
万般无奈之下只好再采用poi去做。还是要导入要用到的jar包,网上有很多实现的代码可直接拿来用。我在本地的java项目中试着写了这个功能(非web的),ok,生成了html文件,同时生成了所含的图片。然后我就把代码转到我的web项目中,但是悲剧发生了,生成的html页面显示是乱码,用notepad++打开源代码也是乱码。我解决了好久没有解决,直到最后把程序中以下两句中的编码由“utf-8”改为“GB2312”后,问题才得以解决,但是至今还不知道为什么这样。
serializer.setOutputProperty(OutputKeys.ENCODING, "utf-8");//一定要改成“GB2312”
FileUtils.writeStringToFile(new File(tpFile), content, "utf-8"); //一定要改成“GB2312”
至于openoffice的方式,我没有试。在网上搜到一些资料是这么说的:
openoffice 会在第一次打开包含他的页面的时候弹出小广告。linux服务器还要解决acess问题。
openoffice有个服务可以开启,再加上 jodconverter.jar 组合使用。
word转html java代码_用java实现word转html相关推荐
- 连连看java代码_连连看 - java代码库 - 云代码
[java]代码库/* * To change this license header, choose License Headers in Project Properties. * To chan ...
- java代码_【JAVA虚拟机(JVM)精髓】05-Java代码的执行过程
持续更新JVM相关知识,敬请关注: Java虚拟机精髓专栏zhuanlan.zhihu.com 这里再简单回顾下Java代码执行的整个过程,首先是前端编译过程,java源文件,通过前端编译器,生成出 ...
- 医院医生评价的java代码_基于JAVA的医院信息查询接口调用代码实例
基于JAVA的医院信息查询接口调用代码实例 import java.io.BufferedReader; import java.io.DataOutputStream; import java.io ...
- 21点 小游戏 java代码_基于Java的21点扑克游戏的实现
在上次写的比较牌点的扑克游戏上Java扑克游戏(多人多牌数比较游戏)的实现中,添加21点游戏规则,实现21点牌类游戏.具体实现步骤如下:[需要源代码的留QQ,大家一起探讨探讨哈,谢谢啦!] 抽象出规则 ...
- 高斯模糊java代码_一行java代码实现高斯模糊效果
本文实例为大家分享了本地图片或者网络图片高斯模糊效果(毛玻璃效果),具体内容如下 首先看效果图 1.本地图片高斯模糊 2.网络图片高斯模糊 下面是使用步骤 一.实现本地图片或者网络图片的毛玻璃效果特别 ...
- atm java代码_用JAVA制作简单的ATM的代码 求教
展开全部 ok,稍等 呵呵,已经给你拆分成了两个独立的类了. 我再吧注释加起吧. 哪儿e68a8462616964757a686964616f31333262363734不清楚的可以给我留言嘛,刚开始 ...
- (1 24) 3 java代码_《Java语言程序设计》测试题及参考答案(第1部分)
一.单项选择题 1.Java Applet编程时用户的Applet程序类的正确定义是哪一种 ? (1)class MyApplet extends applet{ } (2)class MyApple ...
- 体质测试java代码_求java代码,要求做一个测试类,实现以下功能之一。最好三个功能都有。...
展开全部 import java.util.*; public class Admin {//管理类 Scanner in=new Scanner(System.in); String msg=&qu ...
- 蜘蛛纸牌 java代码_源代码-Java实现蜘蛛纸牌.doc
源代码-Java实现蜘蛛纸牌 aboutdialog.java import javax.swing.*; import java.awt.*; /* **"关于"窗口 */ pu ...
- 道路监控系统java代码_使用Java实现简单的监控系统
本文只是简单介绍了下监控系统实现的思路,具体还需根据自己需求实现. 前言: 目前存在一个后台服务系统,此时需要配套一个监控系统,对这个后台服务系统进行监控.下面会涉及到两个系统,后台服务系统(这是已经 ...
最新文章
- mongodb自带监控 mongostat数值说明
- 【问题解决】连接mysql 8错误:authentication plugin 'caching_sha2_password
- c++ 异常处理(2)
- 抛弃市电!微软建成世界首座天然气数据机房:能耗大减
- no need for pictures
- linux后台运行命令,nohup
- kail利用msf工具对MS12-020漏洞进行渗透测试
- 大屏难看怎么办?这份大屏制作教程请收好
- shell:判断某个变量是否包含字符串/变量的方法
- 【Elasticsearch】Elasticsearch 7.3 的 offheap 原理
- 发送邮件(注册用户并激活邮箱)
- 软件架构及几种典型框架
- socket 支持 ipv6
- mp3处理工具(mp3agic)
- 每一个人都应该学习电脑编程,因为它会教你如何思考
- 对软件工程课程的初步认知
- Hijacking tons of Instapage expired users Domains Subdomains
- 百度地图汽车物流数智化应用方案,推进整车运输行业全链条数字化发展
- Tomcat11——Tomat集群
- mysql怎么优化like_MySQL 的 like %关键字怎么优化