Java中Excel导出指定到文件夹

在Java程序中,我们经常会需要将数据导出到Excel表格中。有时候,我们希望能够将导出的Excel文件直接保存到指定的文件夹中,这样可以更方便地管理和使用这些文件。本文将介绍如何在Java中实现Excel导出并指定保存到文件夹的功能。

1. 准备工作

在开始编写代码之前,我们需要先准备好相关的依赖库。在这里,我们可以使用Apache POI库来操作Excel文件。可以在Maven项目中添加以下依赖项:

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>5.2.4</version>
</dependency>

2. 实现Excel导出

下面是一个简单的示例代码,演示了如何将数据导出到Excel文件并保存到指定的文件夹中:

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

import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class ExcelExporter {

    public static void exportToExcel(String[][] data, String filePath) {
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Sheet1");

        for (int i = 0; i < data.length; i++) {
            Row row = sheet.createRow(i);
            for (int j = 0; j < data[i].length; j++) {
                Cell cell = row.createCell(j);
                cell.setCellValue(data[i][j]);
            }
        }

        try {
            Path path = Paths.get(filePath);
            Files.createDirectories(path.getParent());
            FileOutputStream fileOut = new FileOutputStream(filePath);
            workbook.write(fileOut);
            fileOut.close();
            workbook.close();
            System.out.println("Excel file exported successfully to: " + filePath);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        String[][] data = {{"Name", "Age"}, {"Alice", "25"}, {"Bob", "30"}};
        exportToExcel(data, "C:/exported_data/sample.xlsx");
    }
}

在上面的代码中,我们首先创建一个Workbook对象,然后在其中创建一个Sheet对象,并将数据逐行逐列地写入到Excel文件中。最后,我们通过FileOutputStream将Workbook对象写入到指定的文件路径中。

3. 状态图

以下是Excel导出指定到文件夹的状态图:

stateDiagram
    [*] --> Export
    Export --> [*]

结语

通过本文的介绍,我们学习了如何在Java程序中实现将数据导出到Excel文件并保存到指定文件夹的功能。Apache POI库提供了丰富的API来操作Excel文件,我们可以根据自己的需求来扩展和定制导出功能。希望本文对你有所帮助,谢谢阅读!