`
hbhgjiangkun
  • 浏览: 95720 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

移动终端上看word文档

 
阅读更多

这里需要用到一个工具类,将doc转换成html:

/**
* 将Word文档转换成html字符串的工具类
* @author MZULE
*/
public class Doc2Html {
public static void main(String[] args) {
System.out.println(toHtmlString(new File("C:/test/test.docx"), "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 = "<BODY .*</BODY>";
Pattern bodyPattern = Pattern.compile(bodyReg);
Matcher bodyMatcher = bodyPattern.matcher(htmlStr);
if (bodyMatcher.find()) {
// 获取BODY内容,并转化BODY标签为DIV
htmlStr = bodyMatcher.group().replaceFirst("<BODY", "<DIV").replaceAll("</BODY>", "</DIV>");
}
// 调整图片地址
htmlStr = htmlStr.replaceAll("<IMG SRC=\"", "<IMG SRC=\"" + docImgPath + "/");
// 把<P></P>转换成</div></div>保留样式
htmlStr = htmlStr.replaceAll("(<P)([^>]*>.*?)(<\\/P>)", "<div$2</div>");
// 把<P></P>转换成</div></div>并删除样式
//htmlStr = htmlStr.replaceAll("(<P)([^>]*)(>.*?)(<\\/P>)", "<p$3</p>");
htmlStr = htmlStr.replaceAll("\t","");
// 删除不需要的标签
//htmlStr = htmlStr.replaceAll("<[/]?(font|FONT|span|SPAN|xml|XML|del|DEL|ins|INS|meta|META|[ovwxpOVWXP]:\\w+)[^>]*?>", "");
// 删除不需要的属性
//htmlStr = htmlStr.replaceAll("<([^>]*)(?:lang|LANG|class|CLASS|style|STYLE|size|SIZE|face|FACE|[ovwxpOVWXP]:\\w+)=(?:'[^']*'|\"\"[^\"\"]*\"\"|[^>]+)([^>]*)>", "<$1$2>");
return htmlStr;
}
}

另外需要转换工具,这里用的是OpenOffice工具.

在命令提示符里面还需要输入命令:

C:\Users\Administrator>cd C:\Program Files (x86)\OpenOffice.org 3\program

C:\Program Files (x86)\OpenOffice.org 3\program> soffice -headless -accept="socket,port=8100;urp;"

C:\Program Files (x86)\OpenOffice.org 3\program> soffice -headless -accept="socket,port=8100;urp;"

分享到:
评论

相关推荐

    3G时代移动终端发展论文.doc

    3G时代移动终端发展论文.doc

    基于用户位置信息垂直切换,word版文档

    所提出的解决方案,主要是从终端移动性进行考虑,经过切换测量、切换判决和切换执行步骤,从仿真结果分析上,体现出垂直切换的灵活性、高效性的切换策略,使得用户能够在采用不同接入技术的网络间进行切换,从而能够...

    桃源文件系统v3.3

    15、文件交换:支持第三方服务驱动程序,支持计算机与手机双终端双模、双网应用(需安装手机专用服务组件),支持部门、机构、集团分级电子文档的存储与服务,产品通过有关互动模块实现与同级或上级系统电子文档...

    sac文件安全共享管理系统 v5.1.zip

    F3S系统提供的文件操作有:文件复制、移动文件、删除文件、将本地磁盘文件导入到服务器,或者从服务器导出文件等,此功能类似于大家熟知的windows资源管理器。 (二)文件浏览 管理员可以只允许用户浏览文件内容,但...

    桃源企业文件管理系统v3.2

    15、文件交换:支持第三方服务驱动程序,支持计算机与手机双终端双模、双网应用(需安装手机专用服务组件),支持部门、机构、集团分级电子文档的存储与服务,产品通过有关互动模块实现与同级或上级系统电子文档数据...

    桃源企业文件管理系统 3.2.rar

    《桃源企业文件管理系统》是在桃源网络硬盘5.X成熟平台上,针对企业、政府、学校、科研、传媒等企业级用户应用的开发的专业电子文档网络服务系统。 《桃源企业文件管理系统》适用于任何机构内部或内外之间的电子...

    桃源企业文件管理系统 v3.3.zip

    15、文件交换:支持第三方服务驱动程序,支持计算机与手机双终端双模、双网应用(需安装手机专用服务组件),支持部门、机构、集团分级电子文档的存储与服务,产品通过有关互动模块实现与同级或上级系统电子文档数据...

    LoRa低功耗广域网通信技术 Word 文档-适用于要求功耗低、距离远、大量连接以及定位跟踪等的物联网应用-供大家学习研究参考

    如果把网关安装在现有移动通信基站的位置,发射功率20dBm(100mW),那么在建筑密集的城市环境可以覆盖2公里左右,而在密度较低的郊区,覆盖范围可达10公里。 3---基于终端和集中器/网关的系统可以支持测距和定位。

    数飞公文流转系统 v6.1.5.5.zip

    按照移动终端在线用户数收费,只需要购买少量在线用户数给管理层使用 安全性高 可选择集成CA认证、UKEY认证、动态密钥等安全认证,可选择绑定IP、网卡等安全措施;可设置日志删除期限;调用印章需要 验证;可验证...

    JAVA上百实例源码以及开源项目

    (1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上直接地使用它,...

    希沃授课助手 v3.0.10.2742官方PC版.rar

    希沃授课助手通过运行于移动终端的应用,可对PC(及智能平板)进行无线的PPT演示、文件传输、实物拍照展示、触摸板控制等操作。 希沃授课助手功能介绍 多平台兼容SEEWO智能平板、普通PC均可安装服务端 Android...

    BlackBerry开发平台配置及入门介绍(傻瓜教程)

    所谓“黑莓”(BlackBerry)是加拿大RIM公司推出的一种移动电子邮件系统终端,其特色是支持推动式电子邮件、手提电话、文字短信、互联网传真、网页浏览及其他无线资讯服务。  技术上来说,BlackBerry是一种采用...

    网管教程 从入门到精通软件篇.txt

    FDF:Adobe Acrobat表单文档文件 FLA:Macromedia Flash电影 FND:Microsoft Explorer保存的搜索文件(Find applet) FON:系统字体 FRT:Microsoft FoxPro报表文件 FRX:Visual Basic表单文本;Microsoft ...

    PDF有效期设置免费工具

    二、功能: 1、设置PDF有效期 2、有效期的PDF文件,只能够在全功能的PDF软件环境下才能够阅读。...3、在手机等移动终端或者未安装软件的环境下不能够正常获取。 4、PPT\WORD\EXCEL 转换成PDF,并加默认有效期!

    桃源企业文件管理系统源码 v3.2

    15、文件交换:支持第三方服务驱动程序,支持计算机与手机双终端双模、双网应用(需安装手机专用服务组件),支持部门、机构、集团分级电子文档的存储与服务,产品通过有关互动模块实现与同级或上级系统电子文档数据...

    动易SiteFactory v3.6 标准版.rar

    增加支持移动终端访问的WAP功能; 增加会员中心个性化首页功能; 增加插件功能; 增加批量删除节点功能; 增加专题归档功能; 增加会员头像拍摄功能; 增加会员访问记录统计功能; 增加自定义内容页静态...

    信息发布系统解决方案.docx

    word文档-共12页,可用于相关课程的课程设计、大作业等。 交通信息发布是指通过一定的信息传播媒介,向交通参与者提供道路的实际运行情况,提醒、建议或控制交通参与者选择最佳的行走路线,避免和减少行程延误和损失...

    桃源网络硬盘 5.8.zip

    支持在线编辑txt、word、excel、PowerPoint等格式文件,编辑后可回存到服务器,无需下载修改后上传。 5、虚拟电子文件邮局:支持多个文件设置指定提取密码,访客可输入该密码提取有关文件,或通过指定文件提取链接...

    霍尼韦尔Honeywell 的USB扫码枪读取中文二维码

    1. 工具支持霍尼韦尔USB接口的扫码枪直接传输中文二维码到Word,Excel,Txt记事本等工具。 2. 本工具支持USB的HID模式(可以在运行程序后点击“帮助”),以及USB转虚拟COM方式的切换 3. 本工具支持windows操作系统...

Global site tag (gtag.js) - Google Analytics