2014-10-17 503 views
0

我试过下面的代码来添加页脚在我的文档中,但它不能正常工作。如何使用POI API在Word文档中添加页眉和页脚?

​​

我正在使用以下jar来生成我的文档。请帮助...

  1. POI-3.10-FINAL-20140208.jar
  2. POI-OOXML-3.10-FINAL-20140208.jar
  3. POI-OOXML-模式-3.10-FINAL-20140208.jar
  4. POI暂存器-3.10-FINAL-20140208
+0

东西你说的 “不工作正常” 呢?部分工作?给出错误?显示错误?另外,没有显示保存文件的代码,它可以如此简单吗? – Gagravarr 2014-10-17 15:55:15

+0

请帮忙完成代码?请告诉我如何将其保存到文件? – 2014-10-19 06:52:43

+0

要保存文件,无论使用何种格式,都是一样的 - 只需调用[write(OutputStream)](https://poi.apache.org/apidocs/org/apache/poi/POIXMLDocument.html#write%28java。 io.OutputStream%29) – Gagravarr 2014-10-19 09:10:25

回答

0

推进到一个答案评论...

的问题与您的页眉/页脚代码。你的问题中的代码看起来很好,可以做你想做的事情。如果你确实想要做更多的事情,那么最好的参考是unit tests for headers and footers in Apache POI,它涵盖了更多的用例

你的代码不会做的是在做出更改后写出文件!

您只需在代码末尾添加write(OutputStream)的调用即可完成。像

FileOutputStream out = new FileOutputStream("WithHeader.docx"); 
document.write(out); 
out.close(); 
-1

Adding footer to ms word using POI api

CTP ctp = CTP.Factory.newInstance(); 
     CTR ctr = ctp.addNewR(); 
     CTRPr rpr = ctr.addNewRPr(); 
     CTText textt = ctr.addNewT(); 
     textt.setStringValue(" Page 1"); 
     XWPFParagraph codePara = new XWPFParagraph(ctp, document); 
     XWPFParagraph[] newparagraphs = new XWPFParagraph[1]; 
     newparagraphs[0] = codePara; 
     CTSectPr sectPr = document.getDocument().getBody().addNewSectPr(); 
     XWPFHeaderFooterPolicy headerFooterPolicy = new XWPFHeaderFooterPolicy(document, sectPr); 
     headerFooterPolicy.createFooter(STHdrFtr.DEFAULT, newparagraphs); 
+2

这个答案应该有一些片段的解释。 – ssube 2015-04-13 15:07:08

相关问题