poi-java导出word的表格中换行


//替换表格的内容

/**
 * 替换表格中的指定文字
 */
List<XWPFTable> tables = document.getTables();
for (XWPFTable table : tables) {
   List<XWPFTableRow> rows = table.getRows();
   for (XWPFTableRow row : rows) {
      List<XWPFTableCell> cells = row.getTableCells();
      for (XWPFTableCell cell : cells) {




         String text = cell.getText();
         if(text!=null){
for(Map.Entry<String, Object> entry:map.entrySet()){
   String key = "${"+entry.getKey()+"}";
   String value = entry.getValue()!=null?entry.getValue().toString():"";
   //此处用\n进行换行
   if(text.equals(key)){

      if(value.indexOf("\n")!=-1){
         //删除原单元格值
         cell.removeParagraph(0);
         //上面删除,此处新添加一个
         XWPFParagraph xwpfParagraph1 = cell.addParagraph();
        //如果是在原来的基础上进行拼接则用如下,并循环这个list即可
        //List<XWPFParagraph> paragraphs1 = cell.getParagraphs();
         String[] split = value.split("\n");
         // xwpfParagraph.setAlignment(ParagraphAlignment.LEFT);//需要设置,否则中文换行会很生硬很难看
         for (String s : split) {
            XWPFRun run = xwpfParagraph1.createRun();//对某个段落设置格式
            run.setText(s.trim());
            run.addBreak();//换行
         }
      }else {

         //删除原单元格值
         cell.removeParagraph(0);
         //设置新单元格的值
         cell.setText(value);
  
             }

               }
            }
         }
      }

   }
}

 

 

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值