这篇文章将演示如何使用POI 创建带样式和公式的Excel文件。
代码
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.FileOutputStream;
import java.io.IOException;public class ExcelDemo {public static void main(String[] args) {Workbook workbook = new XSSFWorkbook();Sheet sheet = workbook.createSheet("Demo Sheet");// 创建标题行并设置样式Row headerRow = sheet.createRow(0);CellStyle headerStyle = workbook.createCellStyle();Font headerFont = workbook.createFont();headerFont.setBold(true);headerStyle.setFont(headerFont);String[] headers = {"Name", "Age", "Salary", "Total"};for (int i = 0; i < headers.length; i++) {Cell cell = headerRow.createCell(i);cell.setCellValue(headers[i]);cell.setCellStyle(headerStyle);}// 创建数据行Object[][] data = {{"John Doe", 30, 4000},{"Jane Smith", 25, 3500},{"Jack Johnson", 35, 4500}};for (int i = 0; i < data.length; i++) {Row row = sheet.createRow(i + 1);for (int j = 0; j < data[i].length; j++) {row.createCell(j).setCellValue(data[i][j].toString());}// 添加公式计算总数row.createCell(data[i].length).setCellFormula(String.format("C%d*12", i + 2));}// 自动调整列宽for (int i = 0; i < headers.length; i++) {sheet.autoSizeColumn(i);}// 写入Excel文件try (FileOutputStream fileOut = new FileOutputStream("poi_demo.xlsx")) {workbook.write(fileOut);} catch (IOException e) {e.printStackTrace();}// 关闭工作簿try {workbook.close();} catch (IOException e) {e.printStackTrace();}}
}
这个示例代码展示了如何使用Apache POI创建一个包含标题行、数据行、样式和公式的Excel文件,并将其写入文件系统中。
效果图
其他
另外,对以下内容感兴趣的同学请移步对应教程:
GPT-4o 教程
MidJourney教程
Poe教程
Fantia教程