栏目导航
热点推荐
- 三十条有用的 Java 编程规则
- Java制作水印图片源码
- Java常见异常及可能的导致原因
- Java中的修饰词使用方法总结
- J2EE系统异常的处理准则
- Java中的异常、断言、日志解析(
- Java面试技巧:Java面试题集锦(
- 面向Java开发人员的Scala指南:
- Java程序员:一刻钟精通正则表达
- 网友经验分享:学好java开发的关
- 专家解答:创建表格与数据库进行
- Java远程访问Domino数据库
阅览排行
Java通过jacob对excel,word进行打印等操作
www.jz123.cn 2010-01-05 来源: 中国建站 责任编辑(袁袁) 我要投递新闻
充当java和windows平台的桥梁作用,通过com组件的方式。如果大家不了解com组件。可以google一下。(顺便鄙视下百度)。通过它,是我们在java中可以很方便的操作office,包括word,excel等。
闲话少说,马上开始jacob之旅。首先,当然是从官网上下载我们必要的资源。http://danadler.com/jacob/
进入官网,大家会看到这样一段话:The JACOB project is moving to Sourceforge.net. Verion 1.8 is now available at Sourceforge. If you are a sourceforge developer and are interested in contributing to the project, please contact the project administrators. 也就是jacob已经在大名鼎鼎的Sourceforge.net上安营扎寨了。不过不解的是,最新版本1.14已经出来了,这里介绍的最新版本为什么还是1.8.鄙视一下。下载的时候,除了jacob-1.14.3.zip,我建议最好把jacob-1.14.3_src.zip也下载下来。src下有源码,demo等等,非常有用。
解压:jacob-1.14.3.zip,将jacob.jar加入classpath,如果是intel平台,将jacob-1.14.3-x86.dll加入系统盘的system32下。比如我的路径是:C:WINDOWSsystem32 如果是AMD平台,则加入:jacob-1.14.3-x64.dll,
ok, 准备就绪。开始写代码了,本人参照自带的demo实现了简单的打开excel并打印的功能。代码如下:
view plaincopy to clipboardprint? /** * 功能:实现打印工作 * @param path * @date Oct 29, 2008 * @time 11:40:03 AM */ public static void print(String path){ ComThread.InitSTA(); ActiveXComponent xl = new ActiveXComponent("Excel.Application"); try { // System.out.println("version=" + xl.getProperty("Version")); //不打开文档 Dispatch.put(xl, "Visible", new Variant(true)); Dispatch workbooks = xl.getProperty("Workbooks").toDispatch(); //打开文档 Dispatch excel=Dispatch.call(workbooks,"Open",path).toDispatch(); //开始打印 Dispatch.get(excel,"PrintOut"); } catch (Exception e) { e.printStackTrace(); } finally { //始终释放资源 ComThread.Release(); } } /** * 功能:实现打印工作 * @param path * @date Oct 29, 2008 * @time 11:40:03 AM */ public static void print(String path){ ComThread.InitSTA(); ActiveXComponent xl = new ActiveXComponent("Excel.Application"); try { // System.out.println("version=" + xl.getProperty("Version")); //不打开文档 Dispatch.put(xl, "Visible", new Variant(true)); Dispatch workbooks = xl.getProperty("Workbooks").toDispatch(); //打开文档 Dispatch excel=Dispatch.call(workbooks,"Open",path).toDispatch(); //开始打印 Dispatch.get(excel,"PrintOut"); } catch (Exception e) { e.printStackTrace(); } finally { //始终释放资源 ComThread.Release(); } } |
上一篇:JAVA初始化的陷阱 下一篇:Java调用com组件操作word使用总结(jacob)