`
妮子321
  • 浏览: 83919 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

转 Java给word中的table赋值

阅读更多
一、准备工作:

  下载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)。
  • 大小: 79.3 KB
  • 大小: 80.2 KB
分享到:
评论
1 楼 妮子321 2018-05-04  
原文链接:http://www.cnblogs.com/pageoffice/p/8986373.html

查看操作步骤请点击查看附件图片

相关推荐

    在word中动态增加表格并写入数据

    ### 在Word中动态增加表格并写入数据 在日常办公自动化任务中,经常需要将数据自动填充到Word文档中,特别是在报表生成等场景下。本文将详细介绍如何利用C#编程语言实现在Word文档中动态创建表格,并将数据写入到...

    java 操作word文档

    ### Java操作Word文档知识点 #### 一、Java操作Word文档概述 在现代办公环境中,Word文档是最常用的文档格式之一。由于其广泛的应用场景,很多时候我们需要通过编程的方式对Word文档进行读写操作。Java作为一种强大...

    2021-2022计算机二级等级考试试题及答案No.2817.docx

    这些约束可以在CREATE TABLE或ALTER TABLE语句中定义。 5. Java内存管理:在Java中,使用new关键字创建对象,而对象的回收是由垃圾收集器(Garbage Collector)自动进行的,并非通过free关键字。因此,这个陈述是...

    2021-2022计算机二级等级考试试题及答案No.260.docx

    计算机二级等级考试主要涵盖计算机基础知识、操作系统应用、办公软件高级应用、编程语言基础等内容。以下是对部分题目涉及知识...在Java中,有效的赋值语句应为D,即`sum = sum - sum;`,但请注意,这将使`sum`变为0。

    2021-2022计算机二级等级考试试题及答案No.4049.docx

    17. Visual Basic编程:在VB中,如果想在Text1中按下回车键后焦点自动转到Text2,需要在Text1的KeyDown事件中编写相应的代码,所以应该选择Private Sub Text1_KeyDown()。 这些知识点涵盖了Python编程、SQL查询、...

    2021-2022计算机二级等级考试试题及答案No.14709.docx

    1. SQL 语句删除字段:在 SQL 中,删除表中的字段使用 `ALTER TABLE` 语句,正确格式是 `ALTER TABLE 表名 DROP 字段名`,所以选项 B 是正确的。 2. VBA 表达式计算:VBA 中,字符串连接使用 `&` 运算符,因此正确...

    2021-2022计算机二级等级考试试题及答案No.15988.docx

    1. 字符串赋值:在C/C++中,字符串常量必须存储在只读内存区域,因此不能直接赋值给字符数组,选项C中的`s="ABCDEF"`是错误的,应该使用`strcpy`函数。 2. 计算机辅助教学:计算机辅助教学(Computer Assisted ...

    2021-2022计算机二级等级考试试题及答案No.19487.docx

    17. Java变量赋值:在Java中,`int i=++i;`会导致i的值自增后立即赋值给自己,因此i的最终值为11。 18. 选项组控件:选项组控件用于选择单个选项,并将选择的值绑定到某个字段。 19. 广域网:广域网(WAN)不同于...

    2021-2022计算机二级等级考试试题及答案No.17908.docx

    12. Java对象赋值:Java中对象赋值实际上是引用赋值,不是复制整个对象,这意味着两个对象引用同一个内存空间。 13. 对象可见性:Timer对象在运行时通常是不可见的,因为它不会显示在界面上。 14. Web.config文件...

    2021-2022计算机二级等级考试试题及答案No.14693.docx

    17. 定义二维数组时,选项D是错误的,因为它尝试将不同大小的子数组赋值给同一行。 18. Excel2003的高级筛选中,条件区域不同行的条件是逻辑“或”关系,即满足任一条件即可。 19. 并发操作如果不加以控制,可能会...

    2021-2022计算机二级等级考试试题及答案No.10875.docx

    创建的存储函数 `fun()` 返回的是所有学生的平均成绩,`AVG(grade) INTO x` 此语法是正确的,用于计算所有学生的平均成绩并将结果赋值给变量 `x`。 ### 15. 计算机发展阶段 第一代计算机主要使用电子管作为主要逻辑...

    2021-2022计算机二级等级考试试题及答案No.19083.docx

    - **Byte类型**:在Java中,byte类型的取值范围是从-128到127,因此赋值`byte bb = 433;`是错误的。 ### 17. 字符串处理 - **换行符**:在字符串中,使用`\n`表示换行符,可以使文本在显示时分成两行或多行。 ###...

    2021-2022计算机二级等级考试试题及答案No.5305.docx

    8. 在Java中,对象不能直接赋值,而是通过构造函数创建新对象或使用`clone()`方法复制对象。 9. 管道流是Java中用于线程间通信的机制,包括`PipedInputStream`和`PipedOutputStream`。它们之间通过连接实现数据的...

    2021-2022计算机二级等级考试试题及答案No.11523.docx

    题目中,赋值语句D中byte类型的bb不能赋值为433,因为byte类型的取值范围是-128到127。 4. PowerPoint视图:在PowerPoint2003中,幻灯片放映视图不允许调整幻灯片的顺序,而其他如大纲、普通和幻灯片浏览视图可以...

    2021-2022计算机二级等级考试试题及答案No.19853.docx

    11. Java对象赋值:Java中的对象赋值是引用赋值,不是生成新对象,所以说法错误。 12. Java反汇编命令:Java的反汇编命令是javap。 13. 读写数据库:如果不想修改数据库文件,应选择以只读方式打开。 14. 计算机...

    2021-2022计算机二级等级考试试题及答案No.14773.docx

    例如,在SQL中,可以使用`ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name`来重命名列。因此,题目中的描述与“格式”选项最为接近。 ### 28. C语言赋值运算 - **知识点**:理解C语言中...

    2021-2022计算机二级等级考试试题及答案No.9642.docx

    18. 类型转换:在Java中,将int类型的i赋值给long类型的j可以直接进行,但将long类型的j赋值给int类型的i需要强制类型转换,直接赋值会导致数据丢失。 19. 内存类型:在微机中,内存储器通常采用半导体存储器,如...

    2021-2022计算机二级等级考试试题及答案No.5381.docx

    17. Java对象赋值:Java对象赋值并不生成新对象,而是拷贝引用。 18. Word:Word是Microsoft Office套件的一部分,用于文档处理。 19. 网络分类:根据接入的计算机数量,网络被划分为广域网、城域网和局域网。 20...

    2021-2022计算机二级等级考试试题及答案No.17197.docx

    28. Java程序输出:Test.java编译运行后的输出取决于main方法中字符串s1的处理,题目中未给出具体代码,无法直接得出结果。 以上是根据给定的考试题目和答案总结的计算机二级考试相关知识点,涵盖了二叉树、数据库...

Global site tag (gtag.js) - Google Analytics