admin管理员组文章数量:1532657
2024年5月22日发(作者:)
项目开发过程中,需求涉及到了各种文档转换为HTML或者网页易显示格式,现在将实现
方式整理如下:
一、了解Jacob
先了解一下概念,JACOB 就是 JAVA-COM Bridge的缩写,提供自动化的访问com的功
能,也是通过JNI功能访问windows平台下的com组件或者win32系统库的。这是一个开
始于1999年的开源项目的成果,有很多使用者对该项目进行了修改,做出了自己的贡献。
下载地址:
/project/?group_id=109543&package_id=118368
二、Jacob安装
1、我们解开下载的jacob_,在文件夹中找到和两个文件
2、将压缩包解压后,添加到Libraries中;
3、将放至“WINDOWSSYSTEM32”下面。
需要注意的是:
【使用IDE启动Web服务器时,系统读取不到,例如用MyEclipse启动Tomcat,
就需要将dll文件copy到MyEclipse安装目录的“jrebin”下面。
一般系统没有加载到文件时,报错信息为:“sfiedLinkError: no
jacob in ”】
三、使用Jacob转换Word,Excel为HTML
JAVA代码:
Java代码
1. import edReader;
2. import edWriter;
3. import ;
4. import putStream;
5. import tFoundException;
6. import iter;
7. import ption;
8. import treamReader;
9.
10. import XComponent;
11. import ch;
12. import t;
13.
14. public class TransformFiletoHtml
15. {
16. int WORD_HTML = 8;
17. int WORD_TXT = 7;
18. int EXCEL_HTML = 44;
19.
20. /**
21. * WORD转HTML
22. * @param docfile WORD文件全路径
23. * @param htmlfile 转换后HTML存放路径
24. */
25. public void wordToHtml(String docfile, String htmlfile)
26. {
27. ActiveXComponent app = new ActiveXComponent("ation"); /
/ 启动word
28. try
29. {
30. perty("Visible", new Variant(false));
31. Dispatch docs = perty("Documents").toDispatch();
32. Dispatch doc = (docs,"Open",,new O
bject[] { docfile, new Variant(false),new Variant(true) }, new int[1]).toDis
patch();
33. (doc, "SaveAs", , new Object[] {ht
mlfile, new Variant(WORD_HTML) }, new int[1]);
34. Variant f = new Variant(false);
35. (doc, "Close", f);
36. }
37. catch (Exception e)
38. {
39. tackTrace();
40. }
41. finally
42. {
43. ("Quit", new Variant[] {});
44. }
45. }
46.
47. /**
48. * EXCEL转HTML
49. * @param xlsfile EXCEL文件全路径
50. * @param htmlfile 转换后HTML存放路径
51. */
52. public void excelToHtml(String xlsfile, String htmlfile)
53. {
54. ActiveXComponent app = new ActiveXComponent("ation"); /
/ 启动excel
55. try
56. {
57. perty("Visible", new Variant(false));
58. Dispatch excels = perty("Workbooks").toDispatch();
版权声明:本文标题:使用jacob将word转成PDF 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1716329958a498032.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论