POI替换内容到Word并实现换行
一.引入相关jar
<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.9</version>
</dependency>
二.编写案例
public class DocWriter {public static void writer(String inputSrc, String outSrc, Map<String,String> map) {try {XWPFDocument doc = new XWPFDocument(POIXMLDocument.openPackage(inputSrc));/*** 替换段落中指定的文本*/for(XWPFParagraph p : doc.getParagraphs()){List<XWPFRun> runs = p.getRuns();if(runs != null){for(XWPFRun r : runs){//需要替换的文本String text = r.getText(0);//替换指定的文本for(String key : map.keySet()){if(text != null && text.equals(key)){//替换的时候要注意,setText是有两个参数的//第一个是替换的文本,第二个是从哪里开始替换//0是替换全部,如果不设置那么默认就是从原文字//结尾开始追加// r.setText(map.get(key),0);r.addBreak();//换行r.setText(map.get(key));r.addBreak();r.setText("############");}}}}}/*** 替换表格中指定的文字*/for(XWPFTable tab : doc.getTables()){for(XWPFTableRow row : tab.getRows()){for(XWPFTableCell cell : row.getTableCells()){//注意,getParagraphs一定不能漏掉//因为一个表格里面可能会有多个需要替换的文字//如果没有这个步骤那么文字会替换不了for(XWPFParagraph p : cell.getParagraphs()){for(XWPFRun r : p.getRuns()){String text = r.getText(0);for(String key : map.keySet()){if(text.equals(key)){r.setText(map.get(text),0);}}}}}}}doc.write(new FileOutputStream(outSrc));System.out.println("替换完成");} catch (IOException e) {e.printStackTrace();}}public static void main(String[] args) throws IOException, InvalidFormatException {Map<String, String> map = new HashMap<String, String>();map.put("================", "同意! CE2988/张三 2019-01-21");//文件路径String srcPath = "f:\\word\\needle.docx";//替换后新文件的路径String destPath = "f:\\word\\output.docx";writer(srcPath,destPath,map);}
}
三.运行结果
POI替换内容到Word并实现换行相关推荐
- ORCLE替换内容中的回车、换行、制表符(tab)
替换空格 UPDATE table t SET t.name=replace(t.name,' ','') ; chr(13)表示回车(注意是chr,不是char) UPDATE table t SE ...
- poi 替换word里的\n 变成 换行
需求 poi库,将word里的\n变成换行,这样才能把数据库里有换行的数据原样复制到word里,使用了run.addCarriageReturn();回车符,但是不起作用,所以用的是run.addBr ...
- java 打开word(docx)替换内容,并插入图片(盖章)
引入jar包 <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml< ...
- POI替换word中的指定文字(包含表格,表格中有回车)
网上可以找到很多POI替换Word中指定文字的代码,然而基本上都没有对文档中的表格中包含的段落(回车)进行处理.自己写了,代码记录如下: /** * *@templetStream 文档的输入流 *@ ...
- 【操作word】Java + POI导出富文本的内容到word文档
这周工作中,遇到一个需求是需要将数据库中富文本内容导出到word文档里面,于是就采用POI技术实现了一下导出word文档的功能.(word文档是识别html内容的,所以富文本内容也自然能够识别.) 一 ...
- 怎么样批量修改html里的内容,批量修改替换多个Word文档中同一内容的方法
批量修改替换多个Word文档中同一内容的方法群里一位朋友问到,如何一次性批量替换多个word文档中的同一内容.其实,实现多个Word文档的字符进行批量替换的方法有多种. 第一种方法,可以利用第三方软件 ...
- Word模板文件,替换内容 文本、图片、表格、列表、区块、嵌套等
Word模板文件,替换内容 文本.图片.表格.列表.区块.嵌套等 实例:员工信息表Word文件,程序动态替换内容,生成pdf文件 话不多说,先看效果图! 优势: 1.模板只是布局调整,程序无需修改! ...
- java利用POI替换word文档中的标签
java利用POI替换word文档中的标签 <dependency><groupId>org.apache.poi</groupId><artifactId& ...
- C#:对word中表格进行复制、粘贴并且替换内容
在我上一篇对于word开发讲述的文章中对word开发进行了一些介绍,今天接着上一篇文章再介绍一下如何复制word中的表格,然后进行粘贴的操作,最后再介绍一下如何替换表格中的文本. 首先如果想要复制wo ...
最新文章
- 云桌面可附加桌面文件的程序_给我几分钟,还你一个小清新的电脑桌面
- 涂鸦智能冲刺IPO,不卖硬件的AIoT公司,团队阿里云出身,腾讯是大股东
- 2021 第三封拒信 来自牛津大学自主智能机器和系统 Autonomous Intelligent Machines and Systems
- 缘起 Dubbo ,讲讲 Spring XML Schema 扩展机制
- java final的内存_Java并发编程之final域的内存语义
- 条件编译 #ifndef _HEAD_H...中下划线的理解
- ssh框架 验证码实现
- 文本检查点web_reg_find和web_find两个函数的区别
- 6.程序员的自我修养---可执行文件的装载与进程
- 校园表白墙网站源码 带网站后台
- 打好高远球要注意的三要素
- 基于51单片机的智能大棚浇花系统设计 花盆浇水灌溉补光散热方案原理图程序
- 恢复iPhone已删除的短信
- 【文献阅读】Commission Fee is not Enough: A Hierarchical Reinforced Framework for Portfolio Management
- uniApp调用高德地图时遇到的问题记录
- map与vector排序
- 友基s400手写板怎么安装_手写板安装,手把手教你电脑手写板怎么安装
- 【控制工程】二阶系统的动态响应
- php获取省市区,THinkPHP5.0 获取省市区三级名称
- 常微分方程求解在MATLAB,MatLab常微分方程及常微分方程组的求解
热门文章
- linux .sh文件详解,干货讲解之Linux Shell编程
- 基于GEC6818开发板的视频播放
- 中国电动汽车百人会论坛(2023)将于3月底在京举办
- 5000以内的手机推荐
- 实现数据的备份和恢复 Oracle实训
- 服务器网线灯闪烁显示未插入,无线路由器的灯都在闪,但是始终显示WAN 未连接,网线没有插好...
- 【Vue学习】基础语法(五)
- Java架构II_C1 软件架构设计导论_1 软件架构认知
- android系统预装谷歌商店谷歌整套的通用适配方案
- iphone 改变按钮的背景颜色