一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|

服務器之家 - 編程語言 - JAVA教程 - 利用Java Apache POI 生成Word文檔示例代碼

利用Java Apache POI 生成Word文檔示例代碼

2020-09-30 15:29w8700569 JAVA教程

本篇文章主要介紹了利用Java Apache POI 生成Word文檔示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下

最近公司做的項目需要實現導出Word文檔的功能,網上關于POI生成Word文檔的例子很少,找了半天才在官網里找到個Demo,有了Demo一切就好辦了。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
/* ====================================================================
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements. See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License. You may obtain a copy of the License at
 
    http://www.apache.org/licenses/LICENSE-2.0
 
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
==================================================================== */
package org.apache.poi.xwpf.usermodel;
 
import java.io.FileOutputStream;
 
/**
 * A simple WOrdprocessingML document created by POI XWPF API
 *
 * @author Yegor Kozlov
 */
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();
 
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/w8700569/article/details/7288149

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲国产精品嫩草影院永久 | 日韩手机在线观看 | 亚洲视频一区网站 | 好舒服好爽再快点视频 | 久久99r66热这里有精品 | 日韩精品 欧美 | 国产网站免费观看 | 男女拍拍拍免费视频网站 | 国产精品不卡 | 亚洲精品国产成人中文 | 国产成人免费高清激情视频 | 色老板最新网站视频地址 | 天堂在线国产 | 99精品观看 | 国产成人精品1024在线 | 午夜a一级毛片 | 无人在线观看免费高清视频播放 | a黄毛片 | 99久久精品免费看国产一区二区 | 色涩导航| 欧美特一级 | 久久毛片免费看一区二区三区 | 国产午夜亚洲精品理论片不卡 | 国色天香社区视频免费高清在线观看 | 天天干天天色综合 | 91日本在线观看亚洲精品 | 成人久久18免费网站入口 | 日本天堂影院在线播放 | 国产亚洲综合精品一区二区三区 | 免费看3d小舞被躁视频网站 | 四虎影视黄色 | 成年人免费在线播放 | 国产精品怡红院永久免费 | 亚洲AV精品一区二区三区不卡 | 侵犯小男生免费视频网站 | 热99精品视频 | 深夜在线影院 | 青青草视频国产 | 亚洲AV久久无码精品九号 | 亚洲 综合 欧美在线视频 | 欧美精品99 |