JACOB - a JAVA-COM Bridge
来源:互联网 发布:淘宝宝贝手机链接 编辑:程序博客网 时间:2024/05/17 01:16
今天浏览CSDN论坛,无意中看到了一篇关于JACOB的帖子
名为:用java 将doc转换成html文件...
http://community.csdn.net/Expert/TopicView1.asp?id=5497442
接着就看了一下有关JACOB的网站,该项目现在已经在sourceforge.net上发布.
http://sourceforge.net/projects/jacob-project/
JACOB is a JAVA-COM Bridge that allows you to call COM Automation components from Java. It uses JNI to make native calls into the COM and Win32 libraries.
虽然目前项目中还用不到,但是知道一下也是好的.以后用到的时候不用再费尽心思满Google找了,呵呵.
标记一下.
下面还有一部分JACOB应用的实例和注意,来自http://shuxudong.blog.hexun.com/7591618_d.html
上面是些如下内容的目的,希望你也清楚。
/**
* @author sxd1
* @param paths
* @param savepaths
* @see 完成从word文档向HTML的转换
*/
public static void change(String paths, String savepaths) {
File[] lists = getFileList(paths);
String pathss = new String("");
// 对当前目录下面所有文件进行检索
for (int i = 0; i < lists.length; i++) {
if (lists[i].isFile()) {
String filename = lists[i].getName();
// 判断是否为doc文件
if (filename.endsWith("doc")) {
ActiveXComponent app = new ActiveXComponent(
"Word.Application");// Excel.Application
// 启动word
String docpath = paths + filename;
String htmlpath = savepaths
+ filename.substring(0, (filename.length() - 4));
String inFile = docpath;
// 要转换的word文件
String tpFile = htmlpath;
// HTML文件
boolean flag = false;
try {
app.setProperty("Visible", new Variant(false));
// 设置word不可见
Object docs = app.getProperty("Documents").toDispatch();
Object doc = Dispatch.invoke((Dispatch) docs, "Open",
Dispatch.Method, new Object[] { inFile },
new int[1]).toDispatch();
// 打开word文件
Dispatch.invoke((Dispatch) doc, "SaveAs",
Dispatch.Method, new Object[] { tpFile,
new Variant(8) }, new int[1]);
// 作为html格式保存到临时文件
Variant f = new Variant(false);
Dispatch.invoke((Dispatch) doc, "Close",
Dispatch.Method, new Object[] { new Variant(
false) }, new int[1]);
flag = true;
} catch (Exception e) {
e.printStackTrace();
} finally {
app.invoke("Quit", new Variant[] {});
}
System.out.println("转化完毕!");
}
} else {
pathss = paths;
// 进入下一级目录
pathss = pathss + lists[i].getName() + "/";
// 递归遍历所有目录
change(pathss, savepaths);
}
}
}
上面的代码是程序的主体。
/**
* @author sxd1
* @param dirName
* @return string[]
* @see 得到给定目录下面的所有文件名称,并存放到string[]中
*/
private static File[] getFileList(String dirName) {
File[] fileList = null;
File dir = new File(dirName);
if (dir.isDirectory())
fileList = dir.listFiles();
return fileList;
}
这里需要注意的是:程序是用jadoc包完成的。在写程序之前需要完成下面的工作。因为JDK里面没有这个包。
1,下载jadoc.jar包,可以访问:http://danadler.com/jacob/,找Version1.7
2,需要注意的是Version1.7中包括jadoc.jar和jadoc.dll两个文件但是在这里只能用jadoc.jar,jardoc.dll需要重新下载。下载地址:http://tech.groups.yahoo.com/group/jacob-project/点“files”(当然你必须事先注册并登陆并加入组,才能进入)找就jacod_jer142fix_bin.zip并下载。
3,将下载的jacod.jar拷贝到jdk的/jre/lib/ext下面如:C:/jdk1.5.0_01/jre/lib/ext
4,将下载的jacod.dll拷贝到jdk的jre/bin下面如:C:/jdk1.5.0_01/jre/bin
然后就可以运行了,祝成功!
- JACOB - a JAVA-COM Bridge
- JACOB - a JAVA-COM Bridge
- JACOB - a JAVA-COM Bridge
- The JACOB Project: A JAva-COM Bridge
- 演示使用 JACOB : Java COM Bridge 操纵 Word 文档
- Java调用COM组件 JACOB
- java windows com 对象 jacob
- Java COM bridge
- jacob java.lang.NoSuchMethodError: com.jacob.com.Dispatch.call(Lcom/jacob/com/Dispatch;Ljava/lang/St
- JAVA操作Word(jacob调用com)
- java.lang.NoSuchMethodError: com.jacob.com.Dispatch.call
- Java com bridge 操作Word Excel Outlook.
- java与com组件互访,Jacob的入门以及经验
- java调用com组件操作word使用总结(jacob)
- java调用com组件操作word使用总结(jacob)
- java通过jacob实现对com组件的调用
- java调用com组件操作word使用总结(jacob)
- java调用com组件操作word使用总结(jacob)
- Java: 调试源代码 Using jdb
- 3D游戏中通用碰撞系统的构建
- CruiseControl 2.6.2简介及使用举例
- sql百万级数据通用分页类asp.net版
- 行百里者半九十:浅谈发布测试
- JACOB - a JAVA-COM Bridge
- 谷歌相关软件又有更新了
- 对《将原装NOKIA耳机HS-23改装成3.5口》的补充
- Appache启动问题
- Java: 单元测试 JUnit
- C语言嵌入式系统编程修炼--阅读笔记
- 破解教程 第八课 Trw2000使用介绍
- 破解教程 第九课 感受用TRW2000破解
- 破解教程 第十课 用TRW2000破解的步骤和破解经典句式(最重要的一课)