POI操作word 换行

来源:互联网 发布:网络教育本科是全日制 编辑:程序博客网 时间:2024/06/02 19:28

关于POIword换行问题,网上好多都是C+V的用起来各种报错,,其实很简单 只要使用addCarriageReturn()硬回车 addBreak()软回车即可

this.para.insertNewRun(i).setText("换行换行");                      this.para.insertNewRun(i).addCarriageReturn();//硬回车this.para.insertNewRun(i).addBreak();//软回车this.para.insertNewRun(i).setText(runText);

只不过这里这个换行感觉是相反的,,出来的结果是(

runText<换行符>换行换行
/**          * 替换变量          * @param para 要替换的段落          * @param params 参数          */          private void replaceInPara(XWPFParagraph para, Map<String, Object> params) {             List<XWPFRun> runs;             Matcher matcher;             if (matcher(para.getParagraphText()).find()) {                runs = para.getRuns();                for (int i=0; i<runs.size(); i++) {                 XWPFRun run = runs.get(i);                   String runText = run.toString();                  matcher = matcher(runText);                 if (matcher.find()) {                      while ((matcher = this.matcher(runText)).find()) {                          runText = matcher.replaceFirst(String.valueOf(params.get(matcher.group(1))));                      }                       //直接调用XWPFRun的setText()方法设置文本时,在底层会重新创建一个XWPFRun,把文本附加在当前文本后面,                       //所以我们不能直接设值,需要先删除当前run,然后再自己手动插入一个新的run。                      System.out.println(runText);                    if(runText.indexOf("\n")>-1) {                        String[] text = runText.split("\n");                        this.para.removeRun(i);                         for(int f=text.length-1;f>=0;f--) {                            System.out.println(f);                            this.para.insertNewRun(i).setText(text[f]);                           if(f!=0) {                            this.para.insertNewRun(i).addCarriageReturn();//硬回车                           }                        }                    }else {                        this.para.removeRun(i);                          this.para.insertNewRun(i).setText(runText);                    }                 }                }             }          }  

一如既往地写代码留备用

原创粉丝点击