国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Java如何基于poi操作Wold工具類

瀏覽:21日期:2022-09-03 17:25:02

Apache封裝的POI組件對Excel,Wold的操作已經非常的豐富了,在項目上也會經常用到一些POI的基本操作

這里就簡單的闡述POI操作Wold的基本工具類,代碼還是有點粗造的,但是不影響使用。

這個類包含了一些對文本進行換行,加粗,傾斜,字體顏色,大小,首行縮進,添加邊框等方法。分享給大家學習下:

Apache POI的組件: ApachePOI包含用于處理MS-Office的所有OLE2復合文檔的類和方法。該API的組件列表如下 - POIFS(不良混淆實現文件系統) - 此組件是所有其他POI元素的基本因素。它用于顯式讀取不同的文件。 HSSF(可怕的SpreadSheet格式) - 用于讀取和寫入.xls格式的MS-Excel文件。 XSSF(XML SpreadSheet格式) - 用于MS-Excel的.xlsx文件格式。 HPSF(可怕的屬性集格式) - 用于提取MS-Office文件的屬性集。 HWPF(可怕的字處理器格式) - 用于讀寫MS-Word的.doc擴展文件。 XWPF(XML字處理器格式) - 用于讀寫MS-Word的.docx擴展文件。 HSLF(可怕的幻燈片布局格式) - 用于閱讀,創建和編輯PowerPoint演示文稿。 HDGF(可怕的DiaGram格式) - 它包含MS-Visio二進制文件的類和方法。 HPBF(可怕的PuBlisher格式) - 用于讀寫MS-Publisher文件。

下面就獻上代碼:

首先我們引入需要的第三方jar包

<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version></dependency><dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.9</version></dependency>

工具類具體代碼:

package com.herbert.test;import org.apache.poi.xwpf.usermodel.*;import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts;import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTRPr;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.ArrayList;import java.util.List;/*** Created by Herbert on 2019/1/22.*/public class WoldUtil { private static XWPFDocument document = null; private static XWPFParagraph paragraph = null; /** * 初始化創建Word文件 */ public WoldUtil(){ document = new XWPFDocument(); } /** * 創建一個段落 * @param position 段落位置 * 0:居左 * 1:居中 * 2:居右 */ public void createParagraph(Integer position){ paragraph = document.createParagraph(); switch (position){ case 0:paragraph.setAlignment(ParagraphAlignment.LEFT);break; case 1:paragraph.setAlignment(ParagraphAlignment.CENTER);break; case 2:paragraph.setAlignment(ParagraphAlignment.RIGHT);break; default:paragraph.setAlignment(ParagraphAlignment.LEFT);break; } } /** * 單線邊框 */ public void createBorder(){ paragraph.setBorderTop(Borders.THICK);//設置上邊框 paragraph.setBorderBottom(Borders.THICK);//設置下邊框 paragraph.setBorderLeft(Borders.THICK);//設置左邊框 paragraph.setBorderRight(Borders.THICK);//設置右邊框 } /** * 雙線邊框 */ public void createBorderDouble(){ paragraph.setBorderTop(Borders.DOUBLE);//設置上邊框 paragraph.setBorderBottom(Borders.DOUBLE);//設置下邊框 paragraph.setBorderLeft(Borders.DOUBLE);//設置左邊框 paragraph.setBorderRight(Borders.DOUBLE);//設置右邊框 } /** * 首行縮進 * @param indentation */ public void addTextIndent(Integer indentation){ paragraph.setIndentationFirstLine(indentation); } /** * 創建文本信息 * @param text 文本信息 * @param bold 是否加粗 true為加粗 * @param italic 是否傾斜 true為傾斜 * @param color 顏色碼 * @param fontSize 字體大小 * @param fontFamily 設置字體 */ public void createRun(String text, Boolean bold,Boolean italic, String color,Integer fontSize,String fontFamily){ XWPFRun r = paragraph.createRun();//創建段落文本 r.setText(text); r.setBold(bold);//設置為粗體 true 為粗體 r.setItalic(italic);//設置為傾斜 true 為粗體 r.setColor(color);//設置顏色 r.setFontSize(fontSize); CTRPr rpr = r.getCTR().isSetRPr() ? r.getCTR().getRPr() : r.getCTR().addNewRPr(); CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts(); fonts.setAscii(fontFamily); fonts.setEastAsia(fontFamily); fonts.setHAnsi(fontFamily); } /** * 寫到磁盤 * @param path */ public void write(String path){ try{ FileOutputStream out = new FileOutputStream(path); document.write(out); out.close(); }catch (IOException e){ e.printStackTrace(); System.out.println('文件出現錯誤'); } } /** * 創建空行 * @param counts 空行個數 */ public void createEmpty(Integer counts){ for(int i =0;i<counts;i++){ XWPFParagraph empty = document.createParagraph(); XWPFRun e = empty.createRun(); e.setText(' '); } } /** * 查詢wold中的數據 返回List 集合 * @param path wold所在的地址 * @return */ public List<String> query(String path){ List<String> list = new ArrayList<String>(); try{ FileInputStream stream = new FileInputStream(path); XWPFDocument doc = new XWPFDocument(stream);// 創建Word文件 for(XWPFParagraph p : doc.getParagraphs()){//遍歷段落System.out.println(p.getParagraphText());list.add(p.getParagraphText()); } }catch (Exception e){ e.printStackTrace(); } return list; } public static void main(String args[]) throws Exception { WoldUtil woldUtil = new WoldUtil(); woldUtil.createParagraph(1); woldUtil.createBorder(); woldUtil.createRun('(標題居中)Apache POI的組件', true, false,'000000',17,FontFamily.BLACKBODY); woldUtil.createBorderDouble(); woldUtil.createParagraph(0); woldUtil.createRun('(邊框)Apache POI包含用于處理MS-Office的所有OLE2復合文檔的類和方法。該API的組件列表如下:', false,true, '4682B4',15,FontFamily.CHINESE_FINE_BLACK); woldUtil.createEmpty(3); woldUtil.createParagraph(0); woldUtil.addTextIndent(600); woldUtil.createRun('(首行縮進)• POIFS(不良混淆實現文件系統) - 此組件是所有其他POI元素的基本因素。它用于顯式讀取不同的文件', true,false,'A0522D',13,FontFamily.MICROSOFT_YAHEI); woldUtil.createEmpty(1); woldUtil.createParagraph(0); woldUtil.createRun('•HWPF(可怕的字處理器格式) - 用于讀寫MS-Word的.doc擴展文件。', true,false,'eeff00',13,FontFamily.MICROSOFT_YAHEI); woldUtil.write('E:herbertsample.doc'); List<String> list =woldUtil.query('E:herbertsample.doc'); System.out.println('list=====>>>>>>>> '+list.toString()); }}

測試截圖

Java如何基于poi操作Wold工具類

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 免费a级毛片网站 | 精品视频国产狼人视频 | 免费手机黄色网址 | 一级做a爰片久久毛片人呢 一级做a爰片久久毛片唾 | 手机看片精品高清国产日韩 | 国产手机在线小视频免费观看 | 真正全免费视频a毛片 | 国产精品久久久久久一区二区 | 欧美激情视频一级视频一级毛片 | 在线视频 自拍 | 天海翼精品久久中文字幕 | 欧美另类 videos黑人极品 | 欧美一级毛片免费高清aa | 日本黄网在线观看 | 亚洲天堂精品在线观看 | 国产欧美专区在线观看 | 另类视频区第一页 | 成年午夜一级毛片视频 | 波多野结衣一区二区三区88 | 国产精品日韩欧美一区二区 | 日本免费一区二区三区毛片 | 99久久综合精品免费 | 久久久久久久久久免费视频 | 手机看片国产欧美日韩高清 | 能直接看的一级欧美毛片 | 欧美一级视频在线观看 | 国产成人精品一区二区不卡 | 日韩欧美三级在线观看 | 一区二区三区影院 | 深夜国产成人福利在线观看女同 | 久草网站 | 性欧美高清come | 成人国产精品视频频 | 狠狠综合久久久久综合小说网 | 国产亚洲高清在线精品99 | 人人公开免费超级碰碰碰视频 | 亚洲成人免费视频 | 操欧美美女 | 鲁一鲁色一色 | 国产精品免费一区二区三区四区 | 国产精品亚洲欧美云霸高清 |