[转载]java操作word(一)】的更多相关文章

一. 需求背景 在做项目的过程中,经常会遇到要把数据库数据导出到Word文件中的需求,因为很多情况下,我们需要将数据导出到WORD中进行打印.此需求可以通过用程序填充数据到word模板中来实现.所谓模板也就是标记了数据位置的Word文件.模板可以简单的分为两种:一种模板包含了固定的.有限个数的数据位置,比如一个请假条的模板中只有“部门.姓名.原因.天数.日期”几个数据位置,也可能是这5个数据位置中的某4个.某3个或某1个,但模板中的标签数量总是这个集合的子集(如下图所示:):另一种是包含了循环数…
应用场景 为了保护版权或辨别文件的真伪,有时需要在生成的Word文件中动态添加水印,PageOffice组件的WaterMark类就封装了给在线编辑的Word文件添加水印这一功能,调用接口非常简单. WaterMark类所属命名空间 com.zhuozhengsoft.pageoffice.wordwriter 支持两种水印 插入文字水印(核心代码): 1 WordDocument doc =new WordDocument(); 2 //添加水印,setText(String)方法中的参数为要…
在Java操作Word书签(一)中介绍了给Word中的特定段落或文字添加书签.读取及删除已有书签的方法,本文将继续介绍Java 操作Word书签的方法,即如何给已有的书签添加内容,包括添加文本.图片.表格等. 使用工具:Free Spire.Doc for Java (免费版) Jar文件获取及导入: 方法1: 通过官网下载jar文件包.下载后,解压文件.并将lib文件夹下的Spire.Doc.jar文件导入到java程序.参考如下导入效果: 方法2:可通过maven仓库安装导入.可参考安装导入…
本文将对如何在Java程序中操作Word表格作进一步介绍.操作要点包括 如何在Word中创建嵌套表格. 对已有表格添加行或者列 复制已有表格中的指定行或者列 对跨页的表格可设置是否禁止跨页断行 创建表格,包括添加数据.插入表格.合并单元格.设置表格样式.单元格居中.单元格背景色,单元格字体样式等设置,可参考这篇文章里的内容. 使用工具:Free Spire.Doc for Java (免费版) Jar文件可通过官网下载jar文件包,下载后,解压文件,将lib文件夹下的Spire.Doc.jar导…
本篇文章将继续介绍通过Java来操作Word书签的方法,即替换Word中已有书签,包括用新的文本.图片.表格等替换原有书签处的内容. 使用工具:Free Spire.Doc for Java (免费版) Jar文件获取及导入: 方法1:通过官网下载jar文件包.下载后,解压文件.并将lib文件夹下的Spire.Doc.jar文件导入到java程序.参考如下导入效果: 方法2:可通过maven仓库安装导入.可参考安装导入方法. Java代码示例 [示例1]用文本替换书签 import com.sp…
本文将对如何在Java程序中操作Word表格作进一步介绍.操作要点包括 如何在Word中创建嵌套表格. 对已有表格添加行或者列 复制已有表格中的指定行或者列 对跨页的表格可设置是否禁止跨页断行 创建表格,包括添加数据.插入表格.合并单元格.设置表格样式.单元格居中.单元格背景色,单元格字体样式等设置,可参考这篇文章里的内容. 使用工具:Free Spire.Doc for Java (免费版) Jar文件可通过官网下载jar文件包,下载后,解压文件,将lib文件夹下的Spire.Doc.jar导…
可参考文档: http://wibiline.iteye.com/blog/1725492 下载jar包 http://download.csdn.net/download/javashixiaofei/9696752 如上是jacob-1.17-M2.jar对应的jar包和dll文件....但是我在maven仓库中并没有发现jacob-1.17版本的. 所以如果使用maven项目的话推荐下载jacob-1.14版本的jar包和dll文件. http://download.csdn.net/de…
一.准备工作: 下载PageOffice for  Java:http://www.zhuozhengsoft.com/dowm/ 二. 实现方法: 要调用PageOffice操作Word中的table,必须借助数据区域(DataRegion)实现的(原因是word中的表格只有index,没有name),要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table.而table的插入,既可以在Word模版中书签处手动插入:工具栏“插入”→“表格”,亦可以在程序中通过数…
在网上找了好多天将数据库中信息导出到word中的解决方案,现在将这几天的总结分享一下.总的来说,java导出word大致有5种解决方案: 1:Jacob是Java-COM Bridge的缩写,它在Java与微软的COM组件之间构建一座桥梁.通过Jacob实现了在Java平台上对微软Office的COM接口进行调用. 优点:调用微软Office的COM接口,生成的word文件格式规范. 缺点:服务器只能是windows平台,不支持unix和linux,且服务器上必须安装微软Office. 2:Ap…
一. 需求背景 在做项目的过程中,经常会遇到要把数据库数据导出到Word文件中的需求,因为很多情况下,我们需要将数据导出到WORD中进行打印.此需求可以通过用程序填充数据到word模板中来实现.所谓模板也就是标记了数据位置的Word文件.模板可以简单的分为两种:一种模板包含了固定的.有限个数的数据位置,比如一个请假条的模板中只有“部门.姓名.原因.天数.日期”几个数据位置,也可能是这5个数据位置中的某4个.某3个或某1个,但模板中的标签数量总是这个集合的子集(如下图所示:):另一种是包含了循环数…
在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下java对word.excel.pdf文件的读取.本篇博客只是讲解简单应用.如果想深入了解原理.请读者自行研究一些相关源码. 首先我们来认识一下读取相关文档的jar包: 1. 引用POI包读取word文档内容 poi.jar 下载地址 http://apache.freelamp.com/poi/release/bin/poi-bin-3.6-20091214.zip…
jacob,功能非常强大,能操作word,excel和pdf.下载地址是:http://sourceforge.net/projects/jacob-project/ 1.新建一个文档  Dispatch word = new ActiveXComponent("Word.Application");  Dispatch documents = word.getProperty("Documents").toDispatch();  Dispatch doc = D…
微软在桌面系统上的成功,令我们不得不大量使用它的办公产品,如:Word,Excel.时至今日,它的源代码仍然不公开已封锁了我们的进一步应用和开发.在我们实际开发企业办公系统的过程中,常常有客户这样子要求:你要把我们的报表直接用Excel打开.或者是:我们已经习惯用Excel打印.但是这种的客户需求在j2ee环境的环境下怎么实现? 一.Java用POI操作Excel文件 Apache的Jakata项目的POI子项目的HSSF接口可以处理MS Excel(97-2002)对象.它不象我们仅仅是用cs…
在开发文档系统或办公系统的过程中,有时候我们需要导出word文档.在网上发现了一个用PageOffice生成word文件的功能,就将这块拿出来和大家分享. 生成word文件与我们编辑word文档本质上是相同的,只不过在用程序生成word文档的时候换成了用代码来操作.下面的例子中主要有添加标题,正文(段落.字体.字号.倍行间距.对齐方式.首行缩进等),插入图片等操作.这里写的例子给出的内容只是PageOffice 组件生成word文件的部分方法,需要使用更多方法的还是要自己根据实际的需求去查看AP…
最近遇到一个项目需要把word 转成pdf,百度了一下网上的方案有很多,比如虚拟打印.给word 装扩展插件等,这些方案都依赖于ms word 程序,在java代码中也得使用诸如jacob或jcom这类java com bridge,使得服务器开发受限于win平台,而且部署起来也很麻烦.后来在某论坛看到了一个openoffice+jodconverter的转换方案,可以完成word到PDF的转换工作,服务器开发端需要安装openoffice,但是需求一步额外的操作--需要在服务器开发上的某个端口…
需求背景 在互联网教育行业,做内容相关的项目经常碰到的一个问题就是如何动态生成一张word试卷.事先把题库中的每一道试题都已经保存成一个独立的word文件了,但是在选择了部分试题生成一张word试卷的时候,如果不能通过java程序来合并已经选择了的word试题文件,那么就只能通过手动录入和拷贝的方式来合并word内容,效率低下,而且人工成本和录入出错率都较高. 问题难点 使用POI来实现word合并需要面对的困难主要有以下几个方面: word 结构问题 —— word不开源,且含有很多非文本内容…
一个使用Apache POI写word文档的实例: 1 package apache.poi; 2 3 import java.io.ByteArrayInputStream; 4 import java.io.ByteArrayOutputStream; 5 import java.io.File; 6 import java.io.FileInputStream; 7 import java.io.FileOutputStream; 8 import java.io.IOException;…
import com.jacob.activeX.ActiveXComponent; import com.jacob.com.Dispatch; import com.jacob.com.Variant; /** * jacob操作MSword类 * @author */ public class WordBean { // word文档 private Dispatch doc; // word运行程序对象 private ActiveXComponent word; // 所有word文档…
Exception in thread "main" java.lang.UnsatisfiedLinkError: no jacob-1.17-x86 in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682) at java.lang.Runtime.loadLibrary0(Runtime.java:822) at java.lang.System.loadLibrary(Sys…
在开发Web办公系统或文档系统时,PageOffice组件是众所周知的在线处理微软word/ppt/excel文档的强大工具,它对WORD文档的各种处理在API层面进行了封装,屏蔽了Office VBA接口的复杂性,而又不失VBA的强大功能,在此要分享的正是PageOffice封装的一个很强大的功能:获取word文档的条目化内容.在一个包含了文档处理功能的办公系统里,用户出于各种原因,希望能通过程序自动分析word文档中每个章节的内容也是一种合理的需求,而PageOffice为实现此功能提供的接…
需求场景 开发的web办公系统如果需要处理大量的Word文档(比如有成千上万个文档),用户一定提出查找包含某些关键字的文档的需求,这就要求能够读取 word 中的文字内容,而忽略其中的文字样式.表格.图片等信息. 方案分析 方案一:使用Apache POI技术将所有服务器上文档的文本获取后存储到数据库,查找文档时利用sql语句检索数据中存储的文档文本是否包含关键字来搜索到相关文档.然而现在 microsoft word 有两种文档格式doc和docx,这两个版本存储数据的格式上都有相当大的差别.…
上一个项目的开发中需要实现从word中读取表格数据的功能,在JAVA社区搜索了很多资料,终于找到了两个相对最佳的方案,因为也得到了不少网友们的帮助,所以不敢独自享用,在此做一个分享. 两个方案分别是:一,用POI的TableIterator获取表格中的数据:二,用PageOffice来获取. 为什么说是两个相对最佳的方案呢?因为两个方案都各有优缺点,POI的优点很明显,就是免费,这正是PageOffice的缺点,PageOffice是一个国产的商业Office组件:POI的缺点有点多,接口复杂调…
应用场景 为了保护版权或辨别文件的真伪,有时需要在生成的Word文件中动态添加水印,PageOffice组件的WaterMark类就封装了给在线编辑的Word文件添加水印这一功能,调用接口非常简单. WaterMark类所属命名空间 com.zhuozhengsoft.pageoffice.wordwriter 支持两种水印 插入文字水印(核心代码): WordDocument doc =new WordDocument(); //添加水印,setText(String)方法中的参数为要添加的水…
Word中,书签功能常用于查找.定位.标记特定字符或段落,对于篇幅较大的文档,此功能非常实用.下面,将介绍通过Java程序来添加及删除Word书签的方法.示例要点包括: 1. 添加书签 1.1 给指定段落添加书签 1.2 给指定字符串添加书签 2. 删除书签 2.1删除书签 2.2 删除书签文本 3. 读取书签文本 使用工具:Free Spire.Doc for Java (免费版) Jar文件获取及导入: 方法1: 通过官网下载jar文件包.下载后,解压文件.并将lib文件夹下的Spire.D…
使用过PageOffice动态生成word文档的人都知道,PageOffice可以给word文档的指定位置进行填充,这里我们所说的指定位置在PageOffice的专业术语里面有两个概念,一个叫做数据区域(DataRegion),另一个叫做数据标签(DataTag). 一. 概念 数据区域:是Word文档中具有 "PO_" 前缀命名的书签所定位的文档区域.简单来说,数据区域就是一种特殊的Word书签对象,便于定位Word文档中的内容. 数据标签:是任意的有效字符组成的特殊样式的字符串(如…
做项目的过程中,经常需要把数据里里的数据读出来,经过加工,以word格式输出. 在网上找了很多解决方案都不太理想,偶尔发现了PageOffice,一个国产的Office插件,开发调用非常简单!比网上介绍的poi,jacob等解决方按容易上手多了!功能接口虽然没有poi,jacob那么多,但是满足了一般的需求的百分之八九十,而且不像poi那样还需要区分处理07格式和03格式那么麻烦. 下面是百度百科PageOffice的介绍: https://baike.baidu.com/item/PageOf…
如果转换后出现乱码,是doc格式的文档的话请转换为docx!!! 下载相关jar包和一个授权到2099年的凭证文件. 链接: https://pan.baidu.com/s/1xudkKqR1-TLLO0RPskyVjQ 提取码: adft 下载相关文件后请把文件都导入到项目中. /** * word转成pdf * * @方法名:wordToPdf * @参数 @param source doc路径 * @参数 @param target 目标pdf路径 * @返回类型 void */ publ…
Java对word文档的操作需要通过第三方组件实现,例如jacob.iText.POI和java2word等.jacob组件的功能最强大,可以操作word,Excel等格式的文件.该组件调用的的是操作系统底层的dll文件.在使用Java操作word文件时,jacob组件是最常用的一个. 1.准备工作 根据上面的描述,需要两类文件.一个软件: ①jacob.jar ②dll文件 下载地址1:百度云盘下载 下载地址2:官方下载 ③电脑上有Microsoft Office软件(WPS.LibreOff…
转载自:http://www.jb51.net/article/17770.htm 在VS2008平台下,引用.net-Microsoft.Office.Interop.Word.12,这样就可以在程序用操作WORD对象了. 通过简单执行,报了80070005错误,这个错误是因为权限不够,需要在DCOM配置中更改.net和IIS用户的操作权限,具体修改过程如下: 解决方法一: 1.控制面板->管理工具->组件服务->计算机->我的电脑->DCom配置->找到Micros…
在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应用.如果想深入了解原理.请读者自行研究一些相关源码. 首先我们来认识一下读取相关文档的jar包: 1. 引用POI包读取word文档内容 poi.jar 下载地址 http://apache.freelamp.com/poi/release/bin/poi-bin-3.6-20091214.zip …