Java实现数据导出到excel文件

这篇具有很好参考价值的文章主要介绍了Java实现数据导出到excel文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用的依赖:Apache提供的poi包

首先导入依赖

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>5.2.2</version>
 </dependency>

 核心实现

//创建一个工作簿,也就是Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
//创建一个工作表
HSSFSheet sheet = wb.createSheet();
//创建一行
HSSFRow row = sheet.createRow(0);
//创建这一行的第一个单元格
HSSFCell cell = row.createCell(0);
//设置单元格的内容
cell.setCellValue("你好!");
//输出文件
//创建字节输出流
File file = new File("D://excel.xls");
FileOutputStream fos = new FileOutputStream(file);
wb.write(fos);
fos.flush();
fos.close();

 这个工作表指的是这个

Java实现数据导出到excel文件

运行结果

 Java实现数据导出到excel文件

现在你完成了往一个单元格里写数据,如果想要做成一个表格,那就需要循环

例如现在有一个需求:现在要统计学生的签到情况,需要把学生的签到记录导出到Excel表中

这里我们用假数据模拟,首先是实体类

public class CheckExcel {
    private String name;//姓名
    private Integer number;//学号
    private Date checkTime;//签到时间
}

主体程序

public class ToExcel {
    static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    public static void getExcel(List<CheckExcel> object) {
        //创建一个工作簿,也就是Excel文件
        HSSFWorkbook wb = new HSSFWorkbook();
        //创建一个工作表
        HSSFSheet sheet = wb.createSheet();
        //第一行,标题
        HSSFRow row0 = sheet.createRow(0);
        HSSFCell cell0 = row0.createCell(0);
        cell0.setCellValue(object.get(0).getCheckName() + "签到统计表");
        //第二行,表头
        HSSFRow row1 = sheet.createRow(1);
        row1.setRowStyle(style);
        row1.createCell(0).setCellValue("姓名");
        row1.createCell(1).setCellValue("学号");
        row1.createCell(2).setCellValue("签到时间");
        //表中数据
        int rowInt = 2;
        for (CheckExcel obj : object) {
            HSSFRow row = sheet.createRow(rowInt++);
            int cellInt = 0;
            row.createCell(cellInt++).setCellValue(obj.getName());
            row.createCell(cellInt++).setCellValue(obj.getNumber());
            row.createCell(cellInt).setCellValue(sdf.format(obj.getCheckTime()));//将日期转换成字符串,要不然存的是一个时间戳
        }
        try {
            //输出文件
            //创建字节输出流
            File file = new File("D://excel.xls");
            FileOutputStream fos = new FileOutputStream(file);
            wb.write(fos);
            fos.flush();
            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println("ToExcel.getExcel");
            System.out.println("IO出异常了");
        }
    }
    public static void main(String[] args) {
        List<CheckExcel> stu = new ArrayList<>();
        stu.add(new CheckExcel("学生1", 1001, "高等数学", new Date()));
        stu.add(new CheckExcel("学生2", 1002, "高等数学", new Date()));
        stu.add(new CheckExcel("学生3", 1003, "高等数学", new Date()));
        getExcel(stu);
    }  
}

 运行结果

Java实现数据导出到excel文件

但是细心的你会发现这个表格没有居中,看起来样式很不好看,这就需要用到HSSFCellStyle设置表格的样式,具体样式设置有很多就不给大家一一演示了,这里放一个链接供大家去参考

https://poi.apache.org/apidocs/dev/org/apache/poi/hssf/usermodel/HSSFCellStyle.html

这是官方提供的API,所有方法都在里面。文章来源地址https://www.toymoban.com/news/detail-673678.html

到了这里,关于Java实现数据导出到excel文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Java】百万数据excel导出功能如何实现

    人不走空                                                                          目录         🌈个人主页:人不走空       💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 前言 1.异步处理 1.1 使用job 1.2 使用mq 2.使用easyexcel 3.分页查询 4.多个she

    2024年02月20日
    浏览(31)
  • poi实现excel文件导入导出(基本数据导出、含格式导出、含批注导出、含图片图表导出)——springboot

    本文主要是介绍springboot + poi实现基本的excel文件导入导出,包含数据导出导入时数据的其他需求校验,导出含有批注信息、导出含有图片信息、导出含有图表信息等的介绍等等,主要是一个demo尽可能简单明了的来介绍相关功能即可。有什么问题可以在留言哦!并在文章末尾附

    2024年02月08日
    浏览(65)
  • Post 和 Get 两种方式实现数据导出Excel文件并下载

    Post 和 Get 两种方式实现数据导出Excel文件并下载 前端使用Vue,后端使用Springboot。 一般而言,使用post方式是比较方便的。但有时候,需要下载的数据在后端进行查询的时候很比较复杂的查询条件,而这个查询条件是前端进行下载请求的时候传递的参数,如果参数比较复杂或参

    2024年02月11日
    浏览(32)
  • 知识库数据导出为excel-使用JavaScript实现在浏览器中导出Excel文件

    我们智能客服知识库机器人已经开发完成,后端数据库是使用的qdrant向量数据库,但是该数据库并没有导出备份功能,所以我按简单的纯前端实现知识库导出excel数据 使用第三方库(如SheetJS) SheetJS是一个流行的JavaScript库,可帮助处理Excel文件。您可以使用SheetJS来将数据导出

    2024年02月16日
    浏览(47)
  • hutool poi、apache poi实现导入导出以及解析excel

    一、前言 看了例子之后后续需要更加深入学习或者更多理解其他API的话,建议看官方文档。hutool项目是中国人维护的,有中文文档,阅读起来很方便。apache poi比较底层一点,可以更加自由去二次开发自己所需的功能。 hutool官方文档 hutool官方gitee apache poi官方文档 二、基于

    2024年02月09日
    浏览(41)
  • Springboot基于easyexcel实现一个excel文件包含多个sheet表格的数据导出

    EasyExcel 是一款基于Java的开源Excel操作工具,它提供了简单且强大的 API,使开发人员可以轻松地读写、操作和生成Excel文件。 EasyExcel 支持 Excel 文件的导入和导出,可以处理大量数据,具有高性能和低内存占用。它可以读取 Excel 文件中的数据,并将数据转换为 Java 对象,也可

    2024年02月03日
    浏览(45)
  • 【MySQL × SpringBoot 突发奇想】全面实现流程 · 数据库导出Excel表格文件的接口

    在上一篇博客,【MySQL × SpringBoot 突发奇想】全面实现流程 · xlsx文件,Excel表格导入数据库的接口_s:103的博客-CSDN博客 我们学习了如何导入表格,现在我们反过来,看看如何导出表格~ 网络资料: View Object(视图对象)是一种在软件开发中常见的设计模式,它用于在用户界面

    2024年02月08日
    浏览(37)
  • Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载

    业务需求:从数据库查询多个list集合信息封装excel,每个excel都有2个sheet页,填充不同的信息,最后将所有excel打包成zip文件,以流的形式返回给客户端,供客户端另存为窗口下载。 只发出一次请求 每个excel表中到数据记录不能超过2条 excel文件或者zip包不会上传服务器,而是

    2024年02月06日
    浏览(40)
  • java实现excel的导入导出(带参数校验:非空校验、数据格式校验)

    本次封装引入阿里开源框架EasyExcel,EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 github地址:GitHub - alibaba/easyexcel: 快速、简洁、解决大文件内存溢出的java处理Excel工具 。 64M内存20秒读取75M(46W行25列)的Excel(3.0.2

    2024年02月01日
    浏览(57)
  • VUE+Elment-ui怎么实现将table表格数据导出到Excel文件?

    最近开发公司后台管理系统时,*运营提出了个需求就是将某表格数据实现一键导出功能,我一实习生我会啥啊,搜吧,好在找到了,捏哈哈,接下来就是实现的流程,方便理解,我见了个简单的页面供大家参考 1.template部分 2.script部分 1.当前页面 2.点击导出按钮 3.下载完成

    2024年02月05日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包