java实现Excel表格的导出

本文介绍了如何使用Java实现Excel表格的导出,特别强调了版本差异,如2003版(.xls)和更新版(.xlsx)。示例以user数据为基础,指出在处理不同版本时的代码调整,例如将HSSF替换为XSSF来支持.xlsx格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java实现Excel表格的导出

java实现Excel表格的导出,此文以user作为例子,首先要了解Excel有版本的差别,这里是2003版本的,也就是后缀名为xls,如果是xlsx会运行出错,如果要导出为xlsx类型的只需要把下文的HSSF开头的改为XSSF即可。
具体实现:

 public static void export(List<User> userList)throws  Exception{
        //指定数据存放位置,注意如果此路径下有重名文件会替换掉里面的内容
        OutputStream outputStream=new FileOutputStream("完整的文件路径以及文件名称");
        //创建一个工作簿
        HSSFWorkbook workbook=new HSSFWorkbook();
        //创建一个工作表sheet
        HSSFSheet sheet=workbook.createSheet("user");
        //构造参数依次表示起始行,截止行,起始列,截止列,合并单元格
        CellRangeAddress region=new CellRangeAddress(0,0,0,3);
        sheet.addMergedRegion(region);

        HSSFCellStyle style=workbook.createCellStyle();
        //水平居中
        style.setAlignment(HorizontalAlignment.CENTER);
        //垂直居中
        style.setVerticalAlignment(VerticalAlignment.CENTER);

        HSSFRow row1=sheet.createRow(0);
        HSSFCell cell=row1.createCell(0);
        //设置值,在这里合并单元格相当于标题
        cell.setCellValue("用户信息表");
        //将样式添加生效
        cell.setCellStyle(style);

        for(int i=0;i<userList.size();i++){
            //行
            HSSFRow row = sheet.createRow(i+1);
            //对列赋值
            row.createCell(0).setCellValue(userList.get(i).getUser_id());
            row.createCell(1).setCellValue(userList.get(i).getUser_name());
            row.createCell(2).setCellValue(userList.get(i).getUser_nickname());
            row.createCell(3).setCellValue(userList.get(i).getUser_avatar());
        }
        workbook.write(outputStream);
        outputStream.close();
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值