java POI 如何實現(xiàn)Excel單元格內(nèi)容換行
更新時間:2021年07月29日 10:38:17 作者:congcongxianshen
這篇文章主要介紹了java POI 如何實現(xiàn)Excel單元格內(nèi)容換行的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
java POI Excel單元格內(nèi)容換行
pom.xml
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.15</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.15</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.5</version> </dependency>
核心代碼
@RestController public class MyController { @RequestMapping("/ip/v5") public void getExcel(HttpServletResponse response) throws IOException { ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("this is 單元格第1行"); arrayList.add("this is 單元格第2行"); arrayList.add("this is 單元格第3行"); arrayList.add("this is 單元格第4行"); XSSFWorkbook workBook = new XSSFWorkbook(); XSSFSheet sheet = workBook.createSheet(); workBook.setSheetName(0, "ip-v4表"); XSSFCellStyle cs = workBook.createCellStyle(); // 換行的關(guān)鍵,自定義單元格內(nèi)容換行規(guī)則 cs.setWrapText(true); String fileName = "china-ip-v4" + ".xls";// 設(shè)置要導(dǎo)出的文件的名字 String[] headers = { "掩碼" }; XSSFRow titleRow = sheet.createRow(0); // 在excel表中添加表頭 for (int i = 0; i < headers.length; i++) { titleRow.createCell(i).setCellValue(headers[i]); } String content = String.join("\n", arrayList); int rowNum = 1; XSSFRow row1 = sheet.createRow(rowNum); // 創(chuàng)建一行 XSSFCell cell = row1.createCell(0); // 創(chuàng)建一個單元格 // 如下也是可以的 //cell.setCellValue("this is 單元格第1行 \n this is單元格第2行 \n this is 單元格第3行 \n this is 單元格第4行"); cell.setCellValue(content); cell.setCellStyle(cs); response.setContentType("application/octet-stream"); response.setHeader("Content-disposition", "attachment;filename=" + fileName); response.flushBuffer(); workBook.write(response.getOutputStream()); } }
結(jié)果:
poi單元格寫值強制換行
String str="強制\r\n換行"
在字符串中間加上\r\n就行了~
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot?整合Security權(quán)限控制的初步配置
這篇文章主要為大家介紹了SpringBoot?整合Security權(quán)限控制的初步配置實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-11-11Java中wait與sleep的區(qū)別講解(wait有參及無參區(qū)別)
這篇文章主要介紹了Java中wait與sleep的講解(wait有參及無參區(qū)別),通過代碼介紹了wait()?與wait(?long?timeout?)?區(qū)別,wait(0)?與?sleep(0)區(qū)別,需要的朋友可以參考下2022-04-04SpringBoot后端進行數(shù)據(jù)校驗JSR303的使用詳解
這篇文章主要介紹了SpringBoot后端進行數(shù)據(jù)校驗JSR303的使用詳解,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03Servlet連接數(shù)據(jù)庫實現(xiàn)用戶登錄的實現(xiàn)示例
本文主要介紹了Servlet連接數(shù)據(jù)庫實現(xiàn)用戶登錄的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06如何理解Java中基類子對象的構(gòu)建過程從"基類向外"進行擴散的?
今天小編就為大家分享一篇關(guān)于如何理解Java中基類子對象的構(gòu)建過程從"基類向外"進行擴散的?,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-04-04