Java怎么将list导出成excel文件?

2025-10-04 09:22:44

1、第一步:创建个List保存excel第一行栏目。

Java怎么将list导出成excel文件?

2、第二步:创建数据,目前只弄了一行数据,多行多创建几个对象。

Java怎么将list导出成excel文件?

3、第三步:引入导出工具类

import java.io.*;

import java.util.*;

import org.apache.poi.hssf.usermodel.*;

/**

 * 导出并发送到邮箱内

 * /

public class toExcel {

    public toExcel() {

        

    }

    public static HSSFCell getCell(HSSFSheet sheet, int row, int col) {

        HSSFRow sheetRow = sheet.getRow(row);

        if (sheetRow == null) {

            sheetRow = sheet.createRow(row);

        }

        HSSFCell cell = sheetRow.getCell(col);

        if (cell == null) {

            cell = sheetRow.createCell(col);

        }

        return cell;

    }

    public static void setText(HSSFCell cell, String text) {

        cell.setCellType(HSSFCell.CELL_TYPE_STRING);

        cell.setCellValue(text);

    }

    public static void toExcel(List<String> titles,List<PageData> list)throws Exception{

        HSSFWorkbook wb=new HSSFWorkbook(); // 定义一个新的工作簿

        HSSFSheet sheet=wb.createSheet("第一个Sheet页");  // 创建第一个Sheet页

        // 第四步,创建单元格,并设置值表头 设置表头居中  

        HSSFCellStyle style = wb.createCellStyle();

        style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式  

        HSSFRow row=sheet.createRow(0); // 创建一个行

        HSSFCell cell=row.createCell(0); // 创建一个单元格  第1列

        //cell.setCellValue(new Date());  // 给单元格设置值

        for (int i = 0; i < titles.size(); i++) { //设置标题

            String title = titles.get(i);

            cell = getCell(sheet, 0, i);

            setText(cell, title);

            cell.setCellStyle(style);

        }

        for (int i = 0; i < list.size(); i++) {

            PageData vpd = list.get(i);

            for (int j = 0; j < titles.size(); j++) {

                String varstr = vpd.getString("var" + (j + 1)) != null ? vpd.getString("var" + (j + 1)) : "";

                cell = getCell(sheet, i + 1, j);

                setText(cell, varstr);

                cell.setCellStyle(style);

            }

        }

        

        FileOutputStream fileOut=new FileOutputStream("D://成员信息表.xls");

        wb.write(fileOut);

        fileOut.close();

        wb.close();

    }

4、第四步:调用方法 toExcel.toExcel(titles,varList);

这样就ok了

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢