做项目的过程中,经常需要把数据里里的数据读出来,经过加工,以word格式输出。 在网上找了很多解决方案都不太理想,偶尔发现了PageOffice,一个国产的Office插件,开发调用非常简单!比网上介绍的poi,jacob等解决方按容易上手多了!功能接口虽然没有poi,jacob那么多,但是满足了一般的需求的百分之八九十,而且不像poi那样还需要区分处理07格式和03格式那么麻烦。
下面是百度百科PageOffice的介绍:
https://baike.baidu.com/item/PageOffice/2737741?fr=aladdin
PageOffice的基本功能包括:
在web网页里打开、编辑、打印预览、打印Word、Excel、PowerPoint等Office文档。
文档并发控制机制。
提供Word修订痕迹、手写批注、圈阅划线、键盘批注、电子印章等OA公文模块的必备功能。
根据数据库动态将数据,包括文本、图片、表格等填充、导出到Word、Excel模板中指定的位置处,并且可以动态指定内容的各种格式。
提取Word、Excel文档中指定位置处的内容,包括文本、图片(Excel暂不支持)、表格等,保存到数据库。
其他功能就不细说了......
更多的接口说明参考PageOffice官网API:http://www.zhuozhengsoft.com/help/java3/index.html
下载地址:http://www.zhuozhengsoft.com/dowm/
下载PageOffice开发包之后,拷贝 Samples4 文件夹到 Tomcat 的 Webapps 目录下,访问:http://localhost:8080/Samples4/index.html 就会看到所有官方示例效果的列表,重点参考以下几个示例:
一、11、给Word文档中的数据区域(DataRegion)赋值的简单示例
一、17、给Word文档中Table赋值的简单示例
一、18、使用数据标签(DataTag)给Word文件填充文本数据
二、6、后台编程插入Word文件到数据区域
二、7、后台编程插入图片到数据区域
二、8、后台编程插入Excel文件到数据区域
二、9、给Word文档添加水印
二、10、使用数据标签(DataTag)给Word文件填充带格式的数据
二、11、在Word中动态创建数据区域
我们可以写一个简单的程序测试一下效果:
PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); WordDocument worddoc = new WordDocument(); //先在要插入word文件的位置手动插入书签,书签必须以“PO_”为前缀 //给DataRegion赋值,值的形式为:"纯文本内容、[word]word文件路径[/word]、[image]图片路径[/image]" DataRegion data1 = worddoc.openDataRegion("PO_p1"); data1.setValue("测试字符串");//纯文本内容 DataRegion data2 = worddoc.openDataRegion("PO_p2"); data2.setValue("[word]doc/2.doc[/word]");//插入word文件 DataRegion data3 = worddoc.openDataRegion("PO_p3"); data3.setValue("[image]doc/1.jpg[/image]");//插入图片 //打开文件、填充数据 poCtrl1.setWriter(worddoc); poCtrl1.webOpen("doc/template.doc", OpenModeType.docNormalEdit, "用户名");
代码很简单。短短几句就完成插入文字,图片,子Word文件的功能!不过做项目的话,可以先定义好一个word模板,这样有利于排版,减少编写代码的工作量,也可以调用PageOffice提供的接口控制模板中数据区域的样式,但是编码工作量就增加了。其功能还远不止这些,根据具体需求具体处理吧。
相关推荐
Java 生成复杂 Word 文档解决方案 本文档旨在解决 Java 生成复杂 Word 文档的问题,提供了一种完美的解决方案。该方案通过使用 Office 2003 或 2007 编辑 Word 文档的样式,然后将其另存为 XML 格式,接着使用 ...
在Java编程环境中,编辑Microsoft Word文档是一项常见的任务,特别是在企业级应用中,如报告生成、自动化文档处理等。本文将详细讲解如何使用Java来编辑Word文档,并基于提供的"java编辑word文档工具源码"进行讨论。...
#### 五、Java读写Word文件 对于Word文档的读写,通常可以借助Apache POI组件来实现。但是,如果只需要简单的读写功能,而不想引入过多的依赖,也可以采用类似XML文件处理的方式来实现。需要注意的是,Word文档本身...
JavaWord文档导出jar包与Freemarker是一个用于在Java后端生成动态Word文档的解决方案。这个rar压缩包中包含的jar文件可以帮助开发者利用Freemarker模板语言将数据动态地填充到Word文档中,实现自动化文档生成。下面...
Apache POI是Java操作Microsoft Office格式文件的库,支持读写Word文档。 2. 创建模板:编写`.ftl`模板文件,定义文档结构,例如标题、段落、表格等,使用`${}`包裹需要动态填充的数据。 3. 配置FreeMarker:设置...
在实际应用中,这样的解决方案可以极大地提高开发效率,尤其是在需要频繁生成报告或批量生成复杂Word文档的情况下。同时,由于FreeMarker和Apache POI都是成熟且广泛使用的库,因此它们具有良好的社区支持和丰富的...
这个"java_poi_读写word文件doc文档_含所有依赖jar包_demo"提供了一个完整的解决方案,包括所有必要的依赖库,使得开发者可以方便地在Java程序中进行Word文件的操作。 首先,让我们了解Java POI库的基本用法。...
这个“JAVA生成WORD工具类”提供了一种解决方案,使得开发者可以通过代码动态地生成Word文档,避免手动操作的繁琐和错误。下面将详细介绍这个工具类的工作原理和可能的应用场景。 首先,Java生成Word文档通常涉及到...
这个项目提供了一个完整的解决方案,使得开发者无需深入了解Word文档的内部结构,就能方便地在Java中生成包含表格和图片的Word文档。对于那些需要在Java应用中生成复杂Word文档的开发者来说,这是一个非常实用的资源...
本资源"java word文档转PDF工具.zip"提供了一种使用Java编程语言将Microsoft Word文档(.doc或.docx)转换为PDF的解决方案。这个工具包包含了必要的库文件(jar包)以及一个示例(demo),使得开发者可以直接将其...
在Java开发中,生成高质量的Word文档是一项挑战,特别是当涉及到复杂的格式、表格和图片时。传统的库如Apache POI虽然能处理基本的读写任务,但在处理大型、格式丰富的文档时,其代码复杂度和易错性较高。同样,...
此外,许多在线教程和示例代码也能提供帮助,特别是针对特定需求的解决方案,如支持更多Word文档特性、优化转换效果等。 总结: Apache POI提供了一个强大的工具集,用于处理和转换各种Office文档格式。将Word文档...
在这个“Office文档转换预览解决方案”中,我们将探讨如何使用JAVA进行Office文档的预览,以及如何将这一功能整合到MyEclipse项目中。 首先,我们需要了解的关键知识点是Office文档的格式。Microsoft Office文档...
在Java开发中,有时我们需要将HTML内容转换成Word文档...不过,由于这种转换方式不支持视频,如果你有视频内容需要导出,可能需要寻找其他解决方案,比如将视频链接以文本形式保留在Word文档中,或者单独处理视频文件。
Apache POI是一个流行的Java库,用于读写Microsoft Office格式的文件,包括Word文档。然而,POI并不直接支持PDF转换。因此,我们通常会结合其他库,如iText或Apache PDFBox,来进行转换操作。在这个小demo中,可能...
总之,Java通过BFreeMarker和Apache POI的组合,为处理Word文档提供了一种灵活且强大的解决方案。这种技术广泛应用于自动化报告生成、数据导出、邮件合并等场景。熟悉这些知识点,有助于提升你在Java办公自动化领域...
总之,通过结合使用Apache POI和jacob,Java开发者可以有效地处理Word文档的下载、预览和转换任务,提供灵活的文档管理解决方案。这些工具类和库的运用,极大地扩展了Java在文档处理领域的能力,使得Java应用能够...
在本项目中,“使用java Apache poi 根据word模板生成word报表.rar”是一个压缩包,其中包含了一套使用Java和Apache POI库来根据预设的Word模板生成定制化报表的解决方案。 首先,我们需要理解Apache POI API的工作...
它允许用户指定一个路径,然后在该路径及其子目录下查找指定类型的文件,如Java源代码、Word文档、文本文件(txt)、MXML、ActionScript(as)、XML以及PDF。这个功能的实现基于文件系统的遍历和文件类型的识别,...