Java导出word文档有很多种方式,本例介绍freemarker导出,根据现有的word模板进行导出 一.简单导出(不含循环导出) 1.新建一个word文件.如下图: 2.使用word将文件另存为xml的格式 3.编辑xml文件内容,将'用户名'替换成-> ${username}.'简介'替换成-> ${resume}.将图片内容用变量-> ${img}替换. --> 4.修改xml文件后缀名,将xml修改为ftl格式. 5.使用java代码,完成word文件导出,需要使用到fr…
     这里用到了两个dll,一个是aspose.word.dll,另外一个是ICSharpCode.SharpZipLib.dll,ICSharpCode.SharpZipLib.dll是用于批量导出word文档的,通过把文件打包成压缩包,以文件流的方式输出下载.aspose.word.dll最好使用最新版的,14.5或者更高,我使用的是14.5版本,页面是采用mvc的语法.在这里感谢赵某人为我提供的帮助.         首先制作好word模板,使用模板可以避免在代码中对word进行排版,…
      接下来是批量导出word文档和批量打印word文件,批量导出word文档和批量打印word文件的思路差不多,只是批量打印不用打包压缩文件,而是把所有文件合成一个word,然后通过js来调用word,提交打印机,把word文档的内容都打印出来. 批量导出word文档需要用到ICSharpCode.SharpZipLib.dll 插件,思路是,先单独导出所勾选的数据的单个文档,保存到生成的临时目录下,再把同一个的人相关文档合并一个word文档,并删除已经合并的那个文档(不是合并后生成的文…
在初始化WordHelper时,要获取模板的相对路径.获取文档的相对路径多个地方要用到,比如批量导出时要先保存文件到指定路径下,再压缩打包下载,所以专门写了个关于获取文档的相对路径的类. #region 获取文档的相对路径 public class WordFilePath { #region 返回文件带路径值 /// <summary> /// 返回文件带路径值 /// </summary> /// <param name="FilePth">文件…
aspose.word主要是通过把读取出来的数据放到datatable里,在datable里做相应的格式的调整,再导出到word文档里.mvc和webform最后导出的语句略有不同,在mvc的controller,用的是base.File,对应的是FileContentResult,在webform里用的是Response.写法分别为:          //在WebForm中,保存文档到流中,使用Response. BinaryWrite输出该文件          var docStream…
一.添加maven依赖,导入FreeMarker所需要的jar包 <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.20</version> </dependency> 二.定义word模板文件 三.修改模板xml文件 把刚刚制作的word文件另存为xml文件 修改这个x…
Java  用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. 准备材料 1.word原件 2.编辑器(推荐Firstobject free XML editor) 实现步骤 1.用Microsoft Office Word打开word原件: 2.把需要动态修改的内容替换成***,如果有图片,尽量选择较小的图片几十K左右,并调整好位置: 3.另存为,选择保存类型…
Java  用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. 准备材料 1.word原件 2.编辑器(推荐Firstobject free XML editor) 实现步骤 1.用Microsoft Office Word打开word原件: 2.把需要动态修改的内容替换成***,如果有图片,尽量选择较小的图片几十K左右,并调整好位置: 3.另存为,选择保存类型…
通过freemarker,以及JAVA,导出word文档. 共分为三步: 第一步:创建模板文件 第二步:通过JAVA创建返回值. 第三步:执行 分别介绍如下: 第一步: 首先创建word文档,按照想要的格式写好模板,需要替换的位置,使用 ${}  占位,其{}中放入名称,以便执行代码时使用. 例子如下 这个模板只要是报告的格式,包括报告名称,报告时间,报告人.下边的是编号和标题,以及内容.因为标题和内容方面可能存在多个,在后边可以循环输出. 制作完成之后,将该文档另存为xml格式.(注意:尽量选…
前不久,公司一个项目需要实现导出文档的功能,之前是一个同事在做,做了3个星期,终于完成了,但是在项目上线之后却发现导出的文档有问题,此时,这个同事已经离职,我自然成为接班者,要把导出功能实现,但是我看了他写的那个ftl文档好久,就是没看懂,上面好多<w:pPr>.<w:rPr>.<w:szCs>.<w:t>等看不懂的标签,我也是无奈,在网上搜索“freemarker导出word文档”无果,后来才知道应该搜索的是“WordXML格式解析”.下面是我在做项目的过…