zoukankan      html  css  js  c++  java
  • POI写Word换行

      本文旨在描述基于变量替换生成Word doc文件的换行方式。Word换行主要有两大类,一类是表格单元格文本的换行,另一类是表格之外的文本的换行。对于表格外的文本我们可以使用“ ”或者“(char)11”来换行,然而对于表格内的文本我们只能使用“(char)11”来进行换行操作。

             下面来看一个示例,我们有如下这样一个word文件作为模板。




             其中param1和param2是在表格之内的,而param3和param4是在表格之外的,之后我们分别对param1和param3使用“ ”换行,而param2和param4用“(char)11”来换行,程序代码如下所示:

    Java代码  
    1. @Test  
    2. public void newLine() throws Exception {  
    3.    String templatePath = "D:\word\newLine.doc";  
    4.    InputStream is = new FileInputStream(templatePath);  
    5.    HWPFDocument doc = new HWPFDocument(is);  
    6.    Range range = doc.getRange();  
    7.    //在表格内使用“ ”是不能换行的  
    8.    range.replaceText("${param1}", "参数1的内容 换行");  
    9.    //(char)11就代表一个换行符可以用在表格中  
    10.    range.replaceText("${param2}", "参数2的内容"+(char)11+"换行");  
    11.    //非表格内使用“ ”是可以换行的  
    12.    range.replaceText("${param3}", "参数3的内容 换行");  
    13.    //非表格内使用“(char)11”也是可以换行的  
    14.    range.replaceText("${param4}", "参数4的内容"+(char)11+"换行");  
    15.    OutputStream os = new FileOutputStream("D:\word\newLine2.doc");  
    16.    doc.write(os);  
    17.    this.closeStream(os);  
    18.    this.closeStream(is);  
    19. }  

             程序运行之后,生成的文件newLine2的内容如下所示:



     

             我们可以看到表格内的param1使用“ ”没有换行,而表格内的参数使用“(char)11”则换行了;表格外的参数param3使用“ ”换行了,而表格外的参数param4使用“(char)11”也换行了。

  • 相关阅读:
    第一次作业(2)
    第0次作业(2)
    最后一次作业—总结报告
    第八次作业
    第七周作业
    第六周作业
    第四周作业
    第4次作业
    2018c语言第3次作业
    2018c语言第2次作业
  • 原文地址:https://www.cnblogs.com/telwanggs/p/4933068.html
Copyright © 2011-2022 走看看