回答: 将Word转Html的原理是这样的:

1、客户上传Word文档到服务器

2、服务器调用OpenOffice程序打开上传的Word文档

3、OpenOffice将Word文档另存为Html格式

4、Over

至此可见,这要求服务器端安装OpenOffice软件,其实也可以是MS Office,不过OpenOffice的优势是跨平台,你懂的。恩,说明一下,本文的测试基于 MS Win7 Ultimate X64 系统。

下面就是规规矩矩的实现。

1、下载OpenOffice,

2、下载Jodconverter 这是一个开启OpenOffice进行格式转化的第三方jar包。

3、泡杯热茶,等待下载。

4、安装OpenOffice,安装结束后,调用cmd,启动OpenOffice的一项服务:C:\Program Files (x86)\OpenOffice.org 3\PRogram>sOffice -headless -aCCept="socket,port=8100;urp;"

5、打开ecliPSe

6、喝杯热茶,等待ecliPSe打开。

7、新建ecliPSe项目,导入Jodconverter/lib 下得jar包。

* commons-io

* jodconverter

* juh

* jurt

* ridl

* slf4j-api

* slf4j-jdk14

* unoil

* xstream

8、Coding...

查看代码

package com.mzule.doc2html.util;

import java.io.BufferedReader;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.io.InputStreamReader;

import java.net.ConnectException;

import java.util.Date;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

import com.artofsolving.jodconverter.DocumentConverter;

import com.artofsolving.jodconverter.openOffice.connection.OpenOfficeConnection;

import com.artofsolving.jodconverter.openOffice.connection.SocketOpenOfficeConnection;

import com.artofsolving.jodconverter.openOffice.converter.OpenOfficeDocumentConverter;

/**

* 将Word文档转换成html字符串的工具类

*

* @author MZULE

*

*/

public class Doc2Html {

public static void mAIn(String[] args) {

System.out

.PRintln(toHtmlString(new File("C:/test/test.doc"), "C:/test"));

}

/**

* 将Word文档转换成html文档

*

* @param docFile

* 需要转换的Word文档

* @param filepath

* 转换之后html的存放路径

* @return 转换之后的html文件

*/

public static File convert(File docFile, String filepath) {

// 创建保存html的文件

File htmlFile = new File(filepath + "/" + new Date().getTime()

+ ".html");

// 创建OpenOffice连接

OpenOfficeConnection con = new SocketOpenOfficeConnection(8100);

try {

// 连接

con.connect();

} catch (ConnectException e) {

System.out.PRintln("获取OpenOffice连接失败...");

e.PRintStackTrace();

}

// 创建转换器

DocumentConverter converter = new OpenOfficeDocumentConverter(con);

// 转换文档问html

converter.convert(docFile, htmlFile);

// 关闭openOffice连接

con.disconnect();

return htmlFile;

}

/**

* 将Word转换成html文件,并且获取html文件代码。

*

* @param docFile

* 需要转换的文档

* @param filepath

* 文档中图片的保存位置

* @return 转换成功的html代码

*/

public static String toHtmlString(File docFile, String filepath) {

// 转换Word文档

File htmlFile = convert(docFile, filepath);

// 获取html文件流

StringBuffer htmlSb = new StringBuffer();

try {

BufferedReader br = new BufferedReader(new InputStreamReader(

new FileInputStream(htmlFile)));

while (br.ready()) {

htmlSb.append(br.readLine());

}

br.close();

// 删除临时文件

htmlFile.delete();

} catch (FileNotFoundException e) {

e.PRintStackTrace();

} catch (IOException e) {

e.PRintStackTrace();

}

// HTML文件字符串

String htmlStr = htmlSb.toString();

// 返回经过清洁的html文本

return clearFormat(htmlStr, filepath);

}

/**

* 清除一些不需要的html标记

*

* @param htmlStr

* 带有复杂html标记的html语句

* @return 去除了不需要html标记的语句

*/

PRotected static String clearFormat(String htmlStr, String docImgPath) {

// 获取body内容的正则

String bodyReg = "

";

Pattern bodyPattern = Pattern.compile(bodyReg);

Matcher bodyMatcher = bodyPattern.matcher(htmlStr);

if (bodyMatcher.find()) {

// 获取BODY内容,并转化BODY标签为DIV

htmlStr = bodyMatcher.group().replaceFirst("

.replaceAll("", "

");

html ppt在线浏览,怎么在网页中在线浏览PPT文档?相关推荐

  1. 批量下载网页中所有的PDF文档

    某日要下载网页中所有的PDF文档,大约400个.作为计算机专业的学生,显然不能手工去下载啊!!!于是在网上找到了相关的批量下载文档脚本,众里寻他千百度,终于在一篇博客http://blog.csdn. ...

  2. Python抓取单个网页中所有的PDF文档

    Github博文地址,此处更新可能不是很及时. 1.背景 最近发现算法以及数据结构落下了不少(其实还是大学没怎么好好学,囧rz),考虑到最近的项目结构越来越复杂了,用它来练练思路,就打算复习下数据结构 ...

  3. 多端手机网页中直接打开PDF文档

    1. 需求 接到一个需求,客户想在手机端的网页里直接能查看到 pdf 文档,一开始我的思路是加一个<a>标签让他跳转链接到 pdf 文档的地址,经过测试发现在 IOS 系统中,网页跳转之后 ...

  4. 在网页中直接显示office文档,

    <iframe   name="fWord"   src="xx.doc"   height=400   width=100  scrolling=&qu ...

  5. 利用pdf.js在手机端网页中直接打开PDF文档

    在项目中用到了需要在手机端直接打开PDF文档的情况,借鉴网友们的意见使用了pdf.js,测试了一下简单好用,下面是使用例子 <!DOCTYPE html> <html> < ...

  6. 在线播放器 在网页中插入MediaPlayer 兼容IE和FF的代码调试

    <!– 在线播放器 在网页中插入MediaPlayer 兼容IE和FF的代码调试 Internet Explorer 和 Netscape 都支持 <embed> 元素,但它不是标准 ...

  7. 网页中在线玩圆桌骑士

    演示一个在网页中在线玩街机游戏圆桌骑士的代码: http://www.return8090.com

  8. 网页中在线玩美少女战士

    演示一个在网页中在线玩美少女战士的代码: http://www.return8090.com

  9. 网页中在线玩三国战纪

    给大家演示一个在网页中在线玩街机游戏三国战纪的代码:http://www.return8090.com

最新文章

  1. List 如何根据对象的属性去重?Java 8 轻松搞定!
  2. 解决项目莫名奇妙的报错问题
  3. oracle insert into values select from,ORACLE语法中的INSERT INTO。。。SELECT。。。 收藏
  4. Maven的pom.xml文件详解------Environment Settings
  5. 2017蓝桥杯省赛---java---C---7 Excel地址)
  6. postfix报错postfix: fatal: parameter inet_interfaces: no local interface found for ::1
  7. 手机linux比windows省电,为什么win10比ubuntu省电?
  8. android中间隔执行程序,Android:在SeekBar中设置间隔
  9. 这月绩效差点没了!搞了一个“新人拼团”活动遇到黑产,搭进去了8台服务器......
  10. javascript代码_认识 JavaScript 可执行代码
  11. ue4 怎么传递变量到另一个蓝图_UE4中用Niagara实现procedural浪花
  12. python屏幕录像专家_可以推荐一款电脑录屏软件吗?
  13. 一年半,从编程都不懂的小白到成功入职!
  14. 信息系统项目管理师考点之上午理论知识点总结
  15. 几个不错的VC编程学习网站
  16. Maple学习笔记——数学计算与数据处理
  17. 初学Python——马哥——Python相关理论
  18. verilog时钟分频设计
  19. java毕业设计的自助旅游导航系统mybatis+源码+调试部署+系统+数据库+lw
  20. 泛微ecology9后端二开环境搭建及远程调试教程

热门文章

  1. 大多数的愤怒源于自己的无知——《Excel受保护视图》
  2. 博弈论——Anti-SG 游戏 结论
  3. 3d打印技术与计算机,讲述3D打印技术是如何实现打印的,与普通的打印有何不同...
  4. python应用——分治法实现循环赛
  5. 小程序为什么要办理ICP许可证
  6. 网络安全实验:CCProxy缓冲区溢出攻击
  7. java数独最快解_java快速解数独
  8. Python验证信用卡号的有效性(算法)(称为Luhn检测或者mod 10 检测)
  9. Python 网络数据采集(三):采集整个网站
  10. kindle的xray怎么用_Kindle 使用小技巧之 X-Ray 功能