`
fourfire
  • 浏览: 413603 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

jcom为word中增加一个表格

    博客分类:
  • JCOM
阅读更多
增加表格,并让表格所在页面横排,有几行也不明白,但是按照vba的翻译过来就可以
public synchronized void addTable(String filePath, int rowsNum,
			int colsNum, String[][] vals) {
		ReleaseManager rm = new ReleaseManager();
		IDispatch docApp = null;
		try {
			docApp = new IDispatch(rm, "Word.Application");

			IDispatch documents = (IDispatch) docApp.get("Documents");

			IDispatch doc = (IDispatch) documents.method("open",
					new Object[] { filePath });// open

			IDispatch selection = ((IDispatch) docApp.get("Selection"));
			selection.method("endKey", new Object[] { new Integer(6) });// 光标到文档末尾

			//selection.method("InsertBreak", new Object[] { new Integer(7) });// 插入一个分页符
			IDispatch range = (IDispatch) doc.method("Range", new Object[] {
					selection.get("start"), selection.get("start") });// 获得一个range,不知道干什么的
			range.method("InsertBreak", new Object[] { new Integer(2) });// 插入一个分页符
			selection.put("start", ((Integer) selection.get("start")) + 1);//选取的开始点右移一个位置,不知道为什么,但是不加这一行不行,变成整篇文档横排了

//			selection = ((IDispatch) docApp.get("Selection"));
			range = (IDispatch) doc.method("Range", new Object[] {
					selection.get("start"),
					((IDispatch) doc.get("Content")).get("end") });//获得一个范围
			IDispatch pageSetup = (IDispatch) range.get("PageSetup");//获得页面设置
			pageSetup.put("Orientation", new Integer(1));//横排
			IDispatch tables = ((IDispatch) doc.get("Tables"));// 得到doc中的表格集合
			tables.method("add", new Object[] { selection.get("range"),
					rowsNum, colsNum });// 增加一张表
			IDispatch table = (IDispatch) tables.method("item",
					new Object[] { new Integer(1) });// 获得刚增加的表格
			IDispatch rows = ((IDispatch) table.get("rows"));// 得到行集合

			for (int i = 1; i <= rowsNum; i++) {
				IDispatch row = (IDispatch) rows.method("item",
						new Object[] { new Integer(i) });
				IDispatch cells = (IDispatch) row.get("Cells");// 单元格集合

				for (int j = 1; j <= colsNum; j++) {
					IDispatch cell = (IDispatch) cells.method("item",
							new Object[] { new Integer(j) });
					((IDispatch) cell.get("Range")).put("Text",
							vals[i - 1][j - 1]);//为表格中的格子赋值

				}

			}

			((IDispatch) docApp.get("ActiveDocument")).method("saveAs",
					new Object[] { filePath, new Integer(0) });

		} catch (JComException e) {
			e.printStackTrace();
		} finally {
			try {
				if (docApp != null) {
					((IDispatch) docApp.get("ActiveDocument")).put("Saved",
							new Boolean(true));

					docApp.method("quit", null);
					docApp = null;
				}
				rm.release();
				rm = null;
			} catch (JComException e) {

				e.printStackTrace();
			}
		}

	}
分享到:
评论

相关推荐

    jcom.jar和jcom.dll

    总之,jcom.jar和jcom.dll是用于Java与Microsoft Office集成的工具,提供了对Visio、Word和Excel的编程访问,以及文件转换和图像处理的能力,对于需要处理Office文档的Java应用来说,这是一个非常实用的库。

    java jcom word,excel打印

    在Java应用程序中,如果我们需要对Word文档或Excel表格进行打印操作,而直接使用Java内置的打印API可能无法满足复杂的格式需求,这时候JCom提供了一个方便的解决方案。 JCom库的工作原理是通过Java的JNI(Java ...

    Java中使用JCOM操作Office对象

    总的来说,JCOM 为 Java 开发者打开了一个全新的世界,让他们能够在熟悉的编程环境中利用 Office 功能,实现了跨平台开发的灵活性与 COM 技术的强大功能的结合。随着文档处理需求的日益复杂,JCOM 成为了 Java 应用...

    jcom.dll,jacob.dll,jacob-1.17-M2-x86.dll

    这些文件是Jacob(Java COM Bridge)的一部分,Jacob是一个开源项目,它的主要功能是提供一个Java到COM的桥接,使得开发者可以在Java程序中无缝地使用Microsoft Office(如Word、Excel)和其他支持COM接口的应用程序...

    java使用Office知识

    上述代码创建了一个名为"统计表格"的Excel工作簿,并在其中写入了一行数据。这只是POI的基本用法,实际应用中可以进行更复杂的操作,如读取数据、合并单元格、设置条件格式等。 接下来,我们讨论Java中使用JCOM操作...

    java开源包11

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包1

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包2

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包3

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包6

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包5

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包10

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包4

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包8

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包7

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包9

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

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

    数字证书:从文件中读取数字证书,生成文件输入流,输入文件为c:/mycert.cer,获取一个处理X.509证书的证书工厂…… Java+ajax写的登录实例 1个目标文件 内容索引:Java源码,初学实例,ajax,登录 一个Java+ajax写的...

    java开源包101

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    Java资源包01

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

Global site tag (gtag.js) - Google Analytics