利用Java Apache POI 生成Word文档示例代码
最近公司做的项目需要实现导出Word文档的功能,网上关于POI生成Word文档的例子很少,找了半天才在官网里找到个Demo,有了Demo一切就好办了。
/*====================================================================
LicensedtotheApacheSoftwareFoundation(ASF)underoneormore
contributorlicenseagreements.SeetheNOTICEfiledistributedwith
thisworkforadditionalinformationregardingcopyrightownership.
TheASFlicensesthisfiletoYouundertheApacheLicense,Version2.0
(the"License");youmaynotusethisfileexceptincompliancewith
theLicense.YoumayobtainacopyoftheLicenseat
http://www.apache.org/licenses/LICENSE-2.0
Unlessrequiredbyapplicablelaworagreedtoinwriting,software
distributedundertheLicenseisdistributedonan"ASIS"BASIS,
WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied.
SeetheLicenseforthespecificlanguagegoverningpermissionsand
limitationsundertheLicense.
====================================================================*/
packageorg.apache.poi.xwpf.usermodel;
importjava.io.FileOutputStream;
/**
*AsimpleWOrdprocessingMLdocumentcreatedbyPOIXWPFAPI
*
*@authorYegorKozlov
*/
publicclassSimpleDocument{
publicstaticvoidmain(String[]args)throwsException{
XWPFDocumentdoc=newXWPFDocument();
XWPFParagraphp1=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);
XWPFRunr1=p1.createRun();
r1.setBold(true);
r1.setText("Thequickbrownfox");
r1.setBold(true);
r1.setFontFamily("Courier");
r1.setUnderline(UnderlinePatterns.DOT_DOT_DASH);
r1.setTextPosition(100);
XWPFParagraphp2=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);
XWPFRunr2=p2.createRun();
r2.setText("jumpedoverthelazydog");
r2.setStrike(true);
r2.setFontSize(20);
XWPFRunr3=p2.createRun();
r3.setText("andwentaway");
r3.setStrike(true);
r3.setFontSize(20);
r3.setSubscript(VerticalAlign.SUPERSCRIPT);
XWPFParagraphp3=doc.createParagraph();
p3.setWordWrap(true);
p3.setPageBreak(true);
//p3.setAlignment(ParagraphAlignment.DISTRIBUTE);
p3.setAlignment(ParagraphAlignment.BOTH);
p3.setSpacingLineRule(LineSpacingRule.EXACT);
p3.setIndentationFirstLine(600);
XWPFRunr4=p3.createRun();
r4.setTextPosition(20);
r4.setText("Tobe,ornottobe:thatisthequestion:"
+"Whether'tisnoblerinthemindtosuffer"
+"Theslingsandarrowsofoutrageousfortune,"
+"Ortotakearmsagainstaseaoftroubles,"
+"Andbyopposingendthem?Todie:tosleep;");
r4.addBreak(BreakType.PAGE);
r4.setText("Nomore;andbyasleeptosayweend"
+"Theheart-acheandthethousandnaturalshocks"
+"Thatfleshisheirto,'tisaconsummation"
+"Devoutlytobewish'd.Todie,tosleep;"
+"Tosleep:perchancetodream:ay,there'stherub;"
+".......");
r4.setItalic(true);
//Thiswouldimplythatthisbreakshallbetreatedasasimplelinebreak,andbreakthelineafterthatword:
XWPFRunr5=p3.createRun();
r5.setTextPosition(-10);
r5.setText("Forinthatsleepofdeathwhatdreamsmaycome");
r5.addCarriageReturn();
r5.setText("Whenwehaveshuffledoffthismortalcoil,"
+"Mustgiveuspause:there'stherespect"
+"Thatmakescalamityofsolonglife;");
r5.addBreak();
r5.setText("Forwhowouldbearthewhipsandscornsoftime,"
+"Theoppressor'swrong,theproudman'scontumely,");
r5.addBreak(BreakClear.ALL);
r5.setText("Thepangsofdespisedlove,thelaw'sdelay,"
+"Theinsolenceofofficeandthespurns"+".......");
FileOutputStreamout=newFileOutputStream("simple.docx");
doc.write(out);
out.close();
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。