首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Apache POI -基于两个日期参数导出到Excel

Apache POI 是一个 Java 库,用于操作 Microsoft Office 文档,包括 Excel

以下是一个简单的示例,演示如何使用 Apache POI 将两个日期参数之间的数据导出到 Excel 文件:

  1. 首先,确保已将 Apache POI 添加到项目的依赖项中。如果您使用的是 Maven,请在 pom.xml 文件中添加以下依赖项:
代码语言:javascript
复制
<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi-ooxml</artifactId>
  <version>5.0.0</version>
</dependency>
  1. 创建一个 Java 类,用于导出数据到 Excel:
代码语言:javascript
复制
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileOutputStream;
import java.io.IOException;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.util.ArrayList;
import java.util.List;

public class ExcelExporter {

    public static void main(String[] args) {
        LocalDate startDate = LocalDate.of(2021, 1, 1);
        LocalDate endDate = LocalDate.of(2021, 1, 10);

        List<String[]> data = getDataBetweenDates(startDate, endDate);

        exportDataToExcel(data, "output.xlsx");
    }

    private static List<String[]> getDataBetweenDates(LocalDate startDate, LocalDate endDate) {
        List<String[]> data = new ArrayList<>();

        // 在此处添加获取数据的逻辑,例如从数据库中查询
        // 这里我们只是简单地生成一些示例数据
        for (LocalDate date = startDate; !date.isAfter(endDate); date = date.plusDays(1)) {
            data.add(new String[]{date.toString(), "Data for " + date});
        }

        return data;
    }

    private static void exportDataToExcel(List<String[]> data, String fileName) {
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Data");

        int rowIndex = 0;

        for (String[] rowData : data) {
            Row row = sheet.createRow(rowIndex++);
            int cellIndex = 0;

            for (String cellData : rowData) {
                Cell cell = row.createCell(cellIndex++);
                cell.setCellValue(cellData);
            }
        }

        try (FileOutputStream fileOut = new FileOutputStream(fileName)) {
            workbook.write(fileOut);
        } catch (IOException e) {
            e.printStackTrace();
        }

        try {
            workbook.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在这个示例中,我们首先定义了两个日期参数 startDateendDate。然后,我们使用 getDataBetweenDates() 方法获取这两个日期之间的数据。在这个示例中,我们只是简单地生成了一些示例数据,但在实际应用中,您可能需要从数据库或其他数据源中查询数据。

接下来,我们使用 exportDataToExcel() 方法将数据导出到 Excel 文件。我们创建了一个新的 WorkbookSheet,然后将数据逐行写入表格。最后,我们将工作簿写入文件并关闭它。

运行此代码后,您将在当前目录下找到一个名为 output.xlsx 的 Excel 文件,其中包含两个日期参数之间的数据。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java数据可视化:报表技术

Excel报表开发一般分为两种形式: 1、为了方便操作,基于Excel的报表批量上传数据,也就是把Excel中的数据导入到系统中。 2、通过java代码生成Excel报表。...也就是把系统中的数据导出到Excel中,方便查阅。...2.1 Excel的两种版本 目前世面上的Excel分为两个大的版本Excel2003和Excel2007及以上两个版本; 两者之间的区别如下: Excel2003 是一个特有的二进制格式,其核心结构是复合文档类型的结构...,存储数据量较小; Excel2007 的核心结构是 XML 类型的结构,采用的是基于 XML 的压缩方式,使其占用的空间更小,操作效率更高 2.2 常见的Excel操作工具 Java中常见的用来操作Excel..."); // 把工作薄输出到本地磁盘 workbook.write(new FileOutputStream("d://test.xlsx")); } } 比较上面两个代码会发现

2.6K40
  • 报表技术

    Excel报表开发一般分为两种形式: 1、为了方便操作,基于Excel的报表批量上传数据,也就是把Excel中的数据导入到系统中。 2、通过java代码生成Excel报表。...也就是把系统中的数据导出到Excel中,方便查阅。...2.1 Excel的两种版本 目前世面上的Excel分为两个大的版本Excel2003和Excel2007及以上两个版本; 两者之间的区别如下: Excel2003 是一个特有的二进制格式,其核心结构是复合文档类型的结构...,存储数据量较小; Excel2007 的核心结构是 XML 类型的结构,采用的是基于 XML 的压缩方式,使其占用的空间更小,操作效率更高 2.2 常见的Excel操作工具 Java中常见的用来操作Excel..."); // 把工作薄输出到本地磁盘 workbook.write(new FileOutputStream("d://test.xlsx")); } } 比较上面两个代码会发现

    2.6K30

    sql2java-excel(二):基于apache poi实现数据库表的导出的spring web支持

    这几年一直在根据工作需要维护升级,最近的项目中需要对数据库的记录提供导出excel的功能。 就开始学习apachePOI,参照网上的示例实现了单张表的导出。...输出配置 如果需要对导出的EXCEL进行配置(标题,列名,字体等等),可以通过在服务方法中增加注解来实现,基于上面的示例在exportDevices方法中增加@ExcelSheet注解对Excel 输出的全局参数进行配置...} fillColor 单元格填充颜色,参见{@link org.apache.poi.ss.usermodel.IndexedColors} horizontalAlign 导出字段水平对齐方式,...参见{@link org.apache.poi.ss.usermodel.HorizontalAlignment} handler ExcelHandlerAdapter.class 自定义数据处理器...而color,filleColor字段在三个位置定义的注解中并不冲突,所以遵循合并原则 关于sql2java-excel的入门使用说明参见上一篇博客: 《sql2java-excel(一):基于apache

    1.6K40

    Java POI 导出Excel经典实现 导出Excel弹出下载框 Spring Boot【不定期更新】

    么误会啦^_^) 呵呵,首先我们来导出EXCEL格式的文件吧。现在主流的操作Excel文件的开源工具有很多,用得比较多的就是ApachePOI及JExcelAPI。...这里我们用Apache POI!我们先去Apache的大本营下载POI的jar包:http://poi.apache.org/ ,我这里使用的是3.0.2版本。...忘了怎么包?不会吧!好,我们来写一个导出Excel的实用类(所谓实用,是指基本不用怎么修改就可以在实际项目中直接使用的!)。我一直强调做类也好,做方法也好,一定要通用性和灵活性强。...,就是两个简单的javabean风格的类。...EXCEL 的形式输出到指定IO设备上 * * @param title * 表格标题名 * @param headers * 表格属性列名数组

    1.1K20

    SpringBoot图文教程10—模板导出|百万数据Excel导出|图片导出「easypoi」

    Apache Poi」 前言 上一篇文章中简单介绍了Poi的使用方式,但是用Poi去写代码着实繁琐了一些,假如你要实现的是复杂的需求,譬如:图片导出,多表数据导出,模板导出,大数据量导出等等,用最原生的...所以从这篇文章开始介绍两个优秀的Poi工具 Easypoi 和 阿里开源的 EasyExcel。...("所有老师数据","teacher"); /** * exportExcel 导出Excel文件 * 参数1 导出参数对象 * 参数...缓解压力 EasyPoi提供的是两个方法 强制使用 xssf版本的Excel /** * @param entity * 表格标题属性 * @param...相关的工作 可以关注相关文章 poi 和 EasyExcel 以及 Poi中文 API 文档 「40种操作 Excel文件的姿势」 让我们再次回顾本文的学习目标 掌握SpringBoot中Easypoi

    2.6K10

    SpringBoot图文教程9—SpringBoot 导入导出 ExcelApache Poi

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+案例 思维图...那么在 SpringBoot 中如何使用 Poi 呢?从本文开始将会说三种使用 Poi 的姿势:Apache Poi,EasyPoi,阿里开源的EasyExcel。 话不多说,马上开始。...集成 Poi 什么是 Poi Apache PoiApache 的一个开源项目,用Java代码通过 poi 技术可以实现 读取 和 生成 Excel 文档。...关于 Poi 的简介非常的少,接下来我们简单说一些和Excel相关的常识 通过 office Excel软件或者 wps 常用的Excel格式有两种:xls 和 xlsx 上图中的两个文件都是Excel...在项目中导入依赖 org.apache.poi poi</artifactId

    4.6K30

    一小时教你轻松学会使用Java 整合 Easy Excel 操作 Excel 文件

    文章目录 一、Apache POI简介 二、POI操作Excel 构建maven项目导入依赖 使用POI实现基本写操作 使用POI实现大数据量写操作 使用POI实现基本读操作 使用POI读取不同类型的数据...三、Easy Excel简介 构建maven项目导入依赖 实现写操作 实现读操作 目前市面上比较流行的操作Excel 文件工具大致有两个,一个是Apache POI、另一个是阿里的Easy Excel...Apache POI官网:https://poi.apache.org/ 基本功能: HSSF:提供读写Microsoft Excel格式文档的功能。...简介 EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。...他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。EasyExcel基于POI进行封装优化,降低内存使用,再大的excel也不会出现内存溢出,让使用更加简单方便。

    1.4K30

    sql2java-excel(一):基于apache poi实现数据库表的导出及支持spring web

    这几年一直在根据工作需要维护升级,最近的项目中需要对数据库的记录提供导出excel的功能。 就开始学习apachePOI,参照网上的示例实现了单张表的导出。... 3.10.0 excelGenerator 特性 基于apach/poi实现数据记录导出为excel...javal.io.OutputStream 支持导出到HTTP请求javax.servlet.http.HttpServletResponse 支持(aspect)切面导出,基于Spring AOP 技术简化服务端导出...导出调用示例 public class ExcelExportTest { /** * 普通JavaBean记录导出到excel文件测试 */ @Test public void test1JavaBeanExport.../ExcelExportTest.java 关于Spring支持参见下一篇博客: 《sql2java-excel(二):基于apache poi实现数据库表的导出的spring web支持》

    80160

    终于有一款组件可以全面超越Apache POI

    功能对比:GcExcel VS Apache POI 公式数量 GcExcel支持452种Excel公式。...条件格式 GcExcel支持多种条件格式,如自定义图标集、判断是否高于平均值(AboveAverage)、发生日期判断、Top 10和重复项判断,且这些条件格式的设置规则与VSTO保持一致。...过滤器数据类型 GcExcel广泛支持文本、数字、日期、颜色和图标等过滤器。 Apache POI仅支持基本的AutoFilter,需要使用低级类来实现应用过滤或创建任何其他高级过滤器。...打开并保存一个20.5MB 的 Excel文件,其中包含了许多数据、公式和单元格格式,结果如下: GcExcel 用时不超过4.9S ;Apache POI 则达到10S左右 GcExcel 内存消耗为...args="double" //参数可以是double, string, date, formula, bigfile 请注意,第一次运行会非常慢,因为它需要下载gradle和所有相关软件包。

    3.3K10
    领券