有一word文档表格
形如:
姓名 ${name}
电话 ${tel}
从数据库读取记录替换上述变量
import java.io.FileOutputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import org.apache.poi.POIXMLDocument;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableCell;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
public class DOCWriter {
public static void searchAndReplace(String srcPath ,String destPath,Map<String,String> map) {
try {
XWPFDocument document = new XWPFDocument(POIXMLDocument.openPackage(srcPath));
Iterator it = document.getTablesIterator();
while(it.hasNext()){
XWPFTable table = (XWPFTable)it.next();
int rcount = table.getNumberOfRows();
for(int i =0 ;i < rcount;i++){
XWPFTableRow row = table.getRow(i);
List<XWPFTableCell> cells = row.getTableCells();
for (XWPFTableCell cell : cells){
for(Entry<String,String> e : map.entrySet()){
if (cell.getText().equals(e.getKey())){
cell.removeParagraph(0);
cell.setText(e.getValue());
}
}
}
}
}
FileOutputStream outStream = null;
outStream = new FileOutputStream(destPath);
document.write(outStream);
outStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception {
HashMap map=new HashMap();
map.put("${name}", "王五");
map.put("${tel}", "8886666");
String srcPath = "c:\\1.docx";
String destPath = "c:\\2.doc";
searchAndReplace(srcPath ,destPath,map);
}
}
分享到:
相关推荐
poi读写word模板/JAVA生成word包
利用poi读取word模板文件,并回填逻辑数据,生成并导出需要的word文档源码。解决模板读取异常问题,提供wordUtils工具类(各种功能实现)
利用poi读取word模板文件,并回填逻辑数据,生成并导出需要的word文档源码。解决模板读取异常问题,提供wordUtils工具类(各种功能实现)
利用poi读取word模板文件,并回填逻辑数据,生成并导出需要的word文档源码。解决模板读取异常问题,提供wordUtils工具类(各种功能实现)
poi操作word的模板,读取数据后,将数据填充到新生成的文件中
非常好的基于word模版,标签,导出word数据的例子
Java通过POI读取Excel遍历数据,根本word模板批量生成word文档,demo可运行,可根据需求修改
Java语言利用POI读取excel文档,利用Freemarker建立word模板(带图片),excel每一行数据生成单个word文档,再利用POI合并成一个word文档(源码); 博客地址:...
使用POI 对 图片插入 目录插入 不用模板文件。 绝对好使的。
使用java poi模板生成word文件,方便数据的展示。规范数据在word的排版。
集合了所有的POI3.8的包和POI3.5的包,主要用于java poi excel模板的读取
springboot实现根据指定pdf、word模板文件填充值到文件里面,生成对应的文件
网络上的根据模板填充Word我都看过一些, 它们的功能在数据换行的时候用的是run对象的.addCarriageReturn()方法,或者是直接用\n实现换行。这些都不符合我的需求, 因为我要的是分段,而不是换行。换行的word导致另一...
使用POI 对 图片插入 目录插入 不用模板文件。 绝对好使的。分简单模式和复杂模式。以前上传过一份,以为上传提交后可以修改上传文件。对不住那位哥,此次是完整项目,在生产环境中有使用的。有注释,有Sample。不懂...
jacob 替换word图片,rtf模板文件字符替换,字符替换成图片,docx4j操作word,itext,poi读取文档图片,条码生成插入文档等... 包和需要的文件都在里面,解压直接可以导入运行
看到网上的一些例子 作者自己给整合起来加上自己的想法 物超所值 虽有些不足 但觉得可以借鉴到一些东西. 里面所需的jar包都有
example-apache-poi 在Word模板文件中进行读写的示例项目。 在上阅读我的文章 要求 JDK 1.7以上 Apache POI 3.10以上 安装 gradle clean build
java操作word可操作书签,在word模板文档上设置书签,然后从数据库中查询数据,填充到word文档书签位置,刚拿到需求时,使劲在网上找资料。幻想第三方jar包,帮我实现。有Apatch的POI,java2word,jcob等,一直让我无法...
使用poi在excel中生成各种常见的图像,比如饼状图(普通饼状图、三D图,环状体、折线图、柱状图、等~~)
最近因项目开发的需要,整理了一份用JAVA导出WORD文档,其部署步骤如下: 1、将jacob-1.14.3-x86.dll放在服务器的系统盘(或运行本机的系统):\WINDOWS\system32目录下。 2、将jacob-1.14.3-x86.dll放在JDK 的 bin ...