2019独角兽企业重金招聘Python工程师标准>>>

问 题

我是试图取代模板 DOCX 与Apache POI文件使用 XWPFDocument 类。我在doc和 JSON 文件标签读取替换数据。我的问题是一个文本行,似乎在 DOCX以某种方式分离当我改变其推广到邮政编码文件打开 document.xml 。例如 [MEMBER_CONTACT_INFO] 文本成为 [MEMBER_CONTACT_INFO 和] 分别。 POI 在自 DOCX 原来是这样以同样的方式读取此。这将在第2款 XWPFRun 对象这显示文本为 [MEMBER_CONTACT_INFO 和] 分开。

我的问题是,有没有办法迫使 POI 通过合并相关的运行或类似的东西,如Word运行?或者,我怎么能解决这个问题?我正在运行的匹配,而文本替换因为它被分成2个不同的运行对象我找不到我的标签。

最佳

解决方案

这浪费了那么多我的时间...一次

基本上,一个 XWPFParagraph 是由多个的 XWPFRun s和XWPFRun是具有固定的传染性文本同样的风格。

所以,当你尝试写一些像“[PLACEHOLDER_NAME]”在MS-Word中它会创建一个单一的XWPFRun。但是,如果你不小心添加了一些东西多了,然后你回去改“[PLACEHOLDER_NAME]”以别的东西它永远不会保证它仍将是一个 XWPFRun 它很可能,这将拆分到两分。据我所知,这是MS-Word如何工作的。

如何避免奔跑的分裂在这种情况下?

解决方案:有两种解决方案,我所知道的:

  1. 复制文本“[PLACEHOLDER_NAME]”到记事本什么的。让你的必要的修改和复制回来,并粘贴,而不是“[PLACEHOLDER_NAME]”你的字的文件,这样一来你的整个“[PLACEHOLDER_NAME]”将被新的文本,避免XWPFRuns分裂取代。

  2. 选择“[PLACEHOLDER_NAME]”,然后单击MS-Word中的“替换”选项,并替换为“[您的全新编辑的占位符]”,这将保证您新的占位符会消耗一个XWPFRun

如果您需要再次更改新的占位符,按照步骤1或2。

转载于:https://my.oschina.net/airship/blog/2051627

在Apache的POI XWPFRun对象分隔文本行相关推荐

  1. Apache POI 密码保护只读word文档在WPS中无效

    Apache POI 密码保护只读word文档在WPS中无效 最近项目有个要求就是从系统下载的WORD文档需要进行密码保护,防止篡改.于是很自然地想到了用POI去加入只读模式然后用密码保护: XWPF ...

  2. POI API 创建Excel 文档

    原文来自 http://www.blogjava.net/hezhi/articles/POI.html HSSF提供给用户使用的对象在org.apache.poi.hssf.usermodel包中, ...

  3. 关于JAVA POI解析WPS docx文档中的table(复杂表格包含单元格横向,纵向的合并)

    关于JAVA POI解析WPS docx文档中的table(复杂表格包含单元格横向,纵向的合并) 首先,关于poi解析表格先阅读一篇他人的博客 使用poi读取word2007(.docx)中的复杂表格 ...

  4. [转载]使用 Apache 的 POI 和 HSSF 将 Excel 电子表格数据加载到 DB2

    使用 Apache 的 POI 和 HSSF 将 Excel 电子表格数据加载到 DB2 在本文中,您将学习如何使用 Apache 的 POI 和 HSSF 构建能将 Microsoft Excel ...

  5. Apache HTTP Server Version 2.2 文档中文版

    模块索引 | 指令索引 | 常见问题 | 词汇表 | 站点导航 Apache HTTP Server 版本2.2 Apache > HTTP Server > 文档 > 版本2.2 ...

  6. 使用Apache下poi创建和读取excel文件

    一:使用apache下poi创建excel文档 1 @Test 2 /* 3 * 使用Apache poi创建excel文件 4 */ 5 public void testCreateExcel() ...

  7. java实例拷贝,Apache Commons包 BeanUtils 对象拷贝实例demo

    Apache Commons包 BeanUtils 对象拷贝实例demo 发布时间:2019-05-08作者:laosun阅读(1846) Apache Commons包 BeanUtils 对象拷贝 ...

  8. Win隐藏 Win10 中的3D对象、文档、音乐、图片、视频、下载、桌面7个文件夹

    Windows 10 的 3D对象.文档.音乐.图片.视频.下载.桌面 这7个自作多情的文件夹,不过出现在[此电脑]里面,还出现在[另存为]对话框里面,烦死了,让它消失! 以下代码保存为 reg 文件 ...

  9. java apache.poi_Java利用apache的POI操作Excel

    最近在写一些报表的活,顺便总结下...第一篇博文,希望多多指教. 项目中经常会设计到一些数据的报表问题,目前java中操作Excel的插件也有很多 ,我说下用apache的POI操作Excel的方法. ...

最新文章

  1. IBM X3550 RAID 扩容实例
  2. 【BLE】TI CC2640R2F片内OAD实验
  3. /proc文件系统读出来的数据是最新的吗?
  4. Vue2.x 踩坑与总结
  5. 入门大爆炸式发展的深度学习,你先要了解这6个著名框架
  6. C#算法设计排序篇之11-二叉树排序(附带动画演示程序)
  7. oracle startup作用,【学习笔记】Oracle打补丁后startup migrate、startup upgrade区别分析...
  8. 辞去程序员一职,我后悔了吗?
  9. 第十三章 确定性策略梯度(Deterministic Policy Gradient Algorithms,DPG)-强化学习理论学习与代码实现(强化学习导论第二版)
  10. Ubuntu su root提示输入密码 怎么输入都不对
  11. 文字处理技术:WORD也在不断变化中
  12. python之sklearn
  13. lightroom classic破解版
  14. windows10应用商店下安装kali子系统
  15. SCSI子系统基础学习笔记 - 3. SCSI设备探测
  16. 「我的microNome组学分析流程」第1版
  17. Python学习笔记---day02快速上手
  18. jquery实现字数限制,超过部分...代替,后缀点击展开,点击后展开全文
  19. 详谈ByteArrayOutputStream的用法
  20. SourceTree安装教程

热门文章

  1. electron版本的串口调度助手
  2. 将中缀表达式转化为后缀表达式
  3. JavaScript 的同源策略
  4. Centos7 网络yum
  5. [转载] C#面向对象设计模式纵横谈——12. Flyweight享元模式
  6. jQuery --- 实现 checkbox 样式的单选框
  7. 介绍一个很好用的Rsa加解密的.Net库 Kalix.ApiCrypto
  8. 关于spring service层的mybatis缓存问题,待解决
  9. 【ZZ】编程能力层次模型
  10. 【C语言】关于结构体最后的长度为0或1数组的思考