更新時間:2022-08-02 10:41:41 來源:動力節點 瀏覽1201次
Java利用POI導出Excel格式文件的方法是什么?動力節點小編來為大家解答。
第一步:先導入依賴。
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.1</version>
</dependency>
簡單案例
package com.maxinyang.excel;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.WorkbookUtil;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
/**
*
* 無樣式 無圖片 導出xls 案例;
* 作者:12345
* 口號:天王蓋地虎
*/
public class Excel {
public static void main(String[] args) {
/**
* 模擬數據庫數據
*/
List<User> users = new ArrayList<>();
users.add(new User("老馬1","18","河南洛陽"));
users.add(new User("老馬2","18","河南洛陽"));
users.add(new User("老馬3","18","河南洛陽"));
users.add(new User("老馬4","18","河南洛陽"));
users.add(new User("老馬5","18","河南洛陽"));
users.add(new User("老馬6","18","河南洛陽"));
users.add(new User("老馬7","18","河南洛陽"));
users.add(new User("老馬8","18","河南洛陽"));
users.add(new User("老馬9","18","河南洛陽"));
users.add(new User("老馬10","18","河南洛陽"));
/**
*創建HSSFWorkbook對象(excel的文檔對象),本實例是導出擴張名為xls(office2003)。
* 如果需要導出擴展名xlsx(office2007以后版本),只需要把文中HSSF改為XSSF即可,
* 如 HSSFWorkbook改為XSSFWorkbook。
*/
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet userTable = wb.createSheet("用戶表");
/**
* HSSFRow 代表行 0 = 表的第一行
* HSSFCell 代表列 0 = 第一行第一列
* 注意 : 單元行單元列下標從零開始
*/
HSSFRow row0 = userTable.createRow(0);
HSSFCell cell0 = row0.createCell(0);
// 設置內容
cell0.setCellValue("用戶表格一覽");
// 合并單元格 起始行 截至列 起始列 截至行
userTable.addMergedRegion(new CellRangeAddress(0,0,0,4));
//設置單元列名
HSSFRow row1 = userTable.createRow(1);
row1.createCell(0).setCellValue("姓名");
row1.createCell(1).setCellValue("年齡");
row1.createCell(2).setCellValue("住址");
// 循環內容
for (int i = 0; i < users.size(); i++) {
User user = users.get(i);
HSSFRow row = userTable.createRow(i + 2);
row.createCell(0).setCellValue(user.getName());
row.createCell(1).setCellValue(user.getAge());
row.createCell(2).setCellValue(user.getAddress());
}
try {
// 文件名稱
String fileName = System.currentTimeMillis() + ".xls";
FileOutputStream fileOutputStream = new FileOutputStream("F:\\學習測試文件\\execl\\" + fileName);
wb.write(fileOutputStream);
fileOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習