一、准备工作:
下载PageOffice for Java:http://www.zhuozhengsoft.com/dowm/
二、 实现方法:
要调用PageOffice操作Word中的table,必须借助数据区域(DataRegion)实现的(原因是word中的表格只有index,没有name),要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table。而table的插入,既可以在Word模版中书签处手动插入:工具栏“插入”→“表格”,亦可以在程序中通过数据区域动态添加。
如果不明白“数据区域”是什么,访问:http://www.zhuozhengsoft.com/PageOffice/course/2017/0719/276.html
1. 编辑word模板。例如:word文档中有这样一个人员信息表,想要在这个人员信息表中填充数据,则必须先将整个成绩表的table插入到一个“书签”中:PO_regTable。插入书签的时候一定要选择整个table。
2. 编写代码填充table
PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //操作table WordDocument doc = new WordDocument(); DataRegion dataRegion = doc.openDataRegion("PO_regTable"); //打开table,openTable(index)方法中的index代表当前书签中table位置的索引,从1开始 Table table = dataRegion.openTable(1); //给table中的单元格赋值, openCellRC(int,int)中的参数分别代表第几行、第几列,从1开始 table.openCellRC(3, 1).setValue("A公司"); table.openCellRC(3, 2).setValue("开发部"); table.openCellRC(3, 3).setValue("李清"); //插入一行,insertRowAfter方法中的参数代表在哪个单元格下面插入一个空行 table.insertRowAfter(table.openCellRC(3, 3)); table.openCellRC(4, 1).setValue("B公司"); table.openCellRC(4, 2).setValue("销售部"); table.openCellRC(4, 3).setValue("张三"); poCtrl1.setWriter(doc); //打开文件 poCtrl1.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "用户名");
3. 生成文件的效果
三、 示例代码
解压下载的PageOffice for java 开发包,拷贝Samples4文件夹到Tomcat的Webapps目录下,访问:http://localhost:8080/Samples4/index.html
参考Samples4中的:一、17、给Word文档中Table赋值的简单示例 (WordSetTable)。java,
相关推荐
### 在Word中动态增加表格并写入数据 在日常办公自动化任务中,经常需要将数据自动填充到Word文档中,特别是在报表生成等场景下。本文将详细介绍如何利用C#编程语言实现在Word文档中动态创建表格,并将数据写入到...
### Java操作Word文档知识点 #### 一、Java操作Word文档概述 在现代办公环境中,Word文档是最常用的文档格式之一。由于其广泛的应用场景,很多时候我们需要通过编程的方式对Word文档进行读写操作。Java作为一种强大...
这些约束可以在CREATE TABLE或ALTER TABLE语句中定义。 5. Java内存管理:在Java中,使用new关键字创建对象,而对象的回收是由垃圾收集器(Garbage Collector)自动进行的,并非通过free关键字。因此,这个陈述是...
计算机二级等级考试主要涵盖计算机基础知识、操作系统应用、办公软件高级应用、编程语言基础等内容。以下是对部分题目涉及知识...在Java中,有效的赋值语句应为D,即`sum = sum - sum;`,但请注意,这将使`sum`变为0。
1. SQL 语句删除字段:在 SQL 中,删除表中的字段使用 `ALTER TABLE` 语句,正确格式是 `ALTER TABLE 表名 DROP 字段名`,所以选项 B 是正确的。 2. VBA 表达式计算:VBA 中,字符串连接使用 `&` 运算符,因此正确...
1. 字符串赋值:在C/C++中,字符串常量必须存储在只读内存区域,因此不能直接赋值给字符数组,选项C中的`s="ABCDEF"`是错误的,应该使用`strcpy`函数。 2. 计算机辅助教学:计算机辅助教学(Computer Assisted ...
17. Java变量赋值:在Java中,`int i=++i;`会导致i的值自增后立即赋值给自己,因此i的最终值为11。 18. 选项组控件:选项组控件用于选择单个选项,并将选择的值绑定到某个字段。 19. 广域网:广域网(WAN)不同于...
12. Java对象赋值:Java中对象赋值实际上是引用赋值,不是复制整个对象,这意味着两个对象引用同一个内存空间。 13. 对象可见性:Timer对象在运行时通常是不可见的,因为它不会显示在界面上。 14. Web.config文件...
17. 定义二维数组时,选项D是错误的,因为它尝试将不同大小的子数组赋值给同一行。 18. Excel2003的高级筛选中,条件区域不同行的条件是逻辑“或”关系,即满足任一条件即可。 19. 并发操作如果不加以控制,可能会...
创建的存储函数 `fun()` 返回的是所有学生的平均成绩,`AVG(grade) INTO x` 此语法是正确的,用于计算所有学生的平均成绩并将结果赋值给变量 `x`。 ### 15. 计算机发展阶段 第一代计算机主要使用电子管作为主要逻辑...
- **Byte类型**:在Java中,byte类型的取值范围是从-128到127,因此赋值`byte bb = 433;`是错误的。 ### 17. 字符串处理 - **换行符**:在字符串中,使用`\n`表示换行符,可以使文本在显示时分成两行或多行。 ###...
8. 在Java中,对象不能直接赋值,而是通过构造函数创建新对象或使用`clone()`方法复制对象。 9. 管道流是Java中用于线程间通信的机制,包括`PipedInputStream`和`PipedOutputStream`。它们之间通过连接实现数据的...
11. Java对象赋值:Java中的对象赋值是引用赋值,不是生成新对象,所以说法错误。 12. Java反汇编命令:Java的反汇编命令是javap。 13. 读写数据库:如果不想修改数据库文件,应选择以只读方式打开。 14. 计算机...
16. Word段落格式:在Word中,设置文本对齐方式确实属于段落格式的一部分,所以题目中的描述是错误的。 17. Visual Basic编程:在VB中,如果想在Text1中按下回车键后焦点自动转到Text2,需要在Text1的KeyDown事件中...
28. Java程序输出:Test.java编译运行后的输出取决于main方法中字符串s1的处理,题目中未给出具体代码,无法直接得出结果。 以上是根据给定的考试题目和答案总结的计算机二级考试相关知识点,涵盖了二叉树、数据库...
26. **数组赋值**:在VBA中,`ARR=3`这样的赋值语句不会给数组的所有元素赋值,而是创建了一个新的变量,与数组无关。数组元素的赋值需逐个指定,如`ARR(1,1)=3`。 这些知识点是计算机二级等级考试中常见的考点,...
19. Word表格行高:在Word中,可以通过拖动垂直标尺上的行标记调整行高。 20. 第一台电子计算机:ENIAC是1946年在美国诞生的第一台电子计算机。 21. Web服务:目前最广泛应用的Internet服务是Web服务,如HTTP协议...
17. 字符串赋值:在 C 语言中,选项C是错误的,因为字符指针不能直接赋值给字符串,需要使用动态内存分配或数组初始化。 18. 程序执行效率:程序的执行效率与数据的存储结构、程序的控制结构、处理数据量等多个因素...
题目中,赋值语句D中byte类型的bb不能赋值为433,因为byte类型的取值范围是-128到127。 4. PowerPoint视图:在PowerPoint2003中,幻灯片放映视图不允许调整幻灯片的顺序,而其他如大纲、普通和幻灯片浏览视图可以...