广告
返回顶部
首页 > 资讯 > 精选 >利用Java Apache POI 生成Word文档示例代码
  • 949
分享到

利用Java Apache POI 生成Word文档示例代码

apachepoiword 2023-05-31 14:05:40 949人浏览 安东尼
摘要

最近公司做的项目需要实现导出Word文档的功能,网上关于POI生成Word文档的例子很少,找了半天才在官网里找到个Demo,有了Demo一切就好办了。 package org.apache.poi.xWPF.usermodel; impo

最近公司做的项目需要实现导出Word文档的功能,网上关于POI生成Word文档的例子很少,找了半天才在官网里找到个Demo,有了Demo一切就好办了。

 package org.apache.poi.xWPF.usermodel;  import java.io.FileOutputStream;   public class SimpleDocument {    public static void main(String[] args) throws Exception {     XWPFDocument doc = new XWPFDocument();      XWPFParagraph p1 = doc.createParagraph();     p1.setAlignment(ParagraphAlignment.CENTER);     p1.setBorderBottom(Borders.DOUBLE);     p1.setBorderTop(Borders.DOUBLE);      p1.setBorderRight(Borders.DOUBLE);     p1.setBorderLeft(Borders.DOUBLE);     p1.setBorderBetween(Borders.SINGLE);      p1.setVerticalAlignment(TextAlignment.TOP);      XWPFRun r1 = p1.createRun();     r1.setBold(true);     r1.setText("The quick brown fox");     r1.setBold(true);     r1.setFontFamily("Courier");     r1.setUnderline(UnderlinePatterns.DOT_DOT_DASH);     r1.setTextPosition(100);      XWPFParagraph p2 = doc.createParagraph();     p2.setAlignment(ParagraphAlignment.RIGHT);      //BORDERS     p2.setBorderBottom(Borders.DOUBLE);     p2.setBorderTop(Borders.DOUBLE);     p2.setBorderRight(Borders.DOUBLE);     p2.setBorderLeft(Borders.DOUBLE);     p2.setBorderBetween(Borders.SINGLE);      XWPFRun r2 = p2.createRun();     r2.setText("jumped over the lazy dog");     r2.setStrike(true);     r2.setFontSize(20);      XWPFRun r3 = p2.createRun();     r3.setText("and went away");     r3.setStrike(true);     r3.setFontSize(20);     r3.setSubscript(VerticalAlign.SUPERSCRIPT);       XWPFParagraph p3 = doc.createParagraph();     p3.setWordWrap(true);     p3.setPageBreak(true);              //p3.setAlignment(ParagraphAlignment.DISTRIBUTE);     p3.setAlignment(ParagraphAlignment.BOTH);     p3.setSpacingLineRule(LineSpacingRule.EXACT);      p3.setIndentationFirstLine(600);           XWPFRun r4 = p3.createRun();     r4.setTextPosition(20);     r4.setText("To be, or not to be: that is the question: "         + "Whether 'tis nobler in the mind to suffer "         + "The slings and arrows of outrageous fortune, "         + "Or to take arms against a sea of troubles, "         + "And by opposing end them? To die: to sleep; ");     r4.addBreak(BreakType.PAGE);     r4.setText("No more; and by a sleep to say we end "         + "The heart-ache and the thousand natural shocks "         + "That flesh is heir to, 'tis a consummation "         + "Devoutly to be wish'd. To die, to sleep; "         + "To sleep: perchance to dream: ay, there's the rub; "         + ".......");     r4.setItalic(true); //This would imply that this break shall be treated as a simple line break, and break the line after that word:      XWPFRun r5 = p3.createRun();     r5.setTextPosition(-10);     r5.setText("For in that sleep of death what dreams may come");     r5.addCarriageReturn();     r5.setText("When we have shuffled off this mortal coil,"         + "Must give us pause: there's the respect"         + "That makes calamity of so long life;");     r5.addBreak();     r5.setText("For who would bear the whips and scorns of time,"         + "The oppressor's wrong, the proud man's contumely,");          r5.addBreak(BreakClear.ALL);     r5.setText("The pangs of despised love, the law's delay,"         + "The insolence of office and the spurns" + ".......");      FileOutputStream out = new FileOutputStream("simple.docx");     doc.write(out);     out.close();    } } 

--结束END--

本文标题: 利用Java Apache POI 生成Word文档示例代码

本文链接: https://www.lsjlt.com/news/226339.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作