21xrx.com
2024-11-08 22:22:12 Friday
登录
文章检索 我的文章 写文章
Java导出xls教程及代码案例
2023-06-14 11:07:11 深夜i     --     --
Java 导出 xls

文章:

在Java开发中,有时需要将数据导出到xls格式文件中,以便用户可以方便地在Excel中查看和处理数据。下面我们来介绍一下如何在Java中实现导出xls文件的功能。

第一步:准备工作

在实现导出xls功能前,需要先引入POI(即Apache的开源项目,用于操作Excel文件)的包。我们可以在maven中通过以下方式引入POI:


   org.apache.poi

   poi

   3.17

   org.apache.poi

   poi-ooxml

   3.17

在引入完包后,我们需要新建一个工具类,命名为ExcelUtils。

第二步:编写导出代码

接下来,我们开始编写导出代码。我们首先需要确定导出数据的格式,在本例中,我们假设要将以下数据导出到xls中:

| 姓名  | 年龄 | 性别 |

| ------- | ---- | ----- |

| 张三  | 20  | 男性 |

| 李四  | 22  | 女性 |

| 王五  | 25  | 男性 |

| 赵六  | 27  | 女性 |

| 钱七  | 30  | 男性 |

我们可以将数据存放在一个List中,代码如下:


List userList = new ArrayList<>();

userList.add(new User("张三", 20, "男性"));

userList.add(new User("李四", 22, "女性"));

userList.add(new User("王五", 25, "男性"));

userList.add(new User("赵六", 27, "女性"));

userList.add(new User("钱七", 30, "男性"));

其中,User是一个JavaBean类,代码如下:


public class User {

  private String name;

  private int age;

  private String gender;

  public User(String name, int age, String gender)

    this.name = name;

    this.age = age;

    this.gender = gender;

  

  // getter和setter方法省略

}

接下来,我们需要编写导出代码。代码如下:


public class ExcelUtils {

  

  public static void exportExcel(List userList, OutputStream outputStream) throws IOException {

    // 创建工作簿

    Workbook workbook = new XSSFWorkbook();

    

    // 创建工作表

    Sheet sheet = workbook.createSheet("用户表");

    

    // 创建表头

    Row headerRow = sheet.createRow(0);

    headerRow.createCell(0).setCellValue("姓名");

    headerRow.createCell(1).setCellValue("年龄");

    headerRow.createCell(2).setCellValue("性别");

    

    // 创建数据行

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

      Row dataRow = sheet.createRow(i + 1);

      dataRow.createCell(0).setCellValue(userList.get(i).getName());

      dataRow.createCell(1).setCellValue(userList.get(i).getAge());

      dataRow.createCell(2).setCellValue(userList.get(i).getGender());

    }

    

    // 输出到输出流

    workbook.write(outputStream);

    workbook.close();

  }

}

以上代码中,我们先新建了一个工作簿和工作表,然后依次创建表头和数据行,并将数据写入工作表。最后,将工作簿输出到输出流中并关闭工作簿。

第三步:调用导出代码

在调用导出代码之前,我们需要先获取输出流,代码如下:


FileOutputStream outputStream = new FileOutputStream("userList.xls");

此处,我们将导出的文件命名为userList.xls,并将输出流绑定到该文件中。

接下来,可以调用ExcelUtils类中的exportExcel方法来导出数据:


ExcelUtils.exportExcel(userList, outputStream);

完整代码如下:


public class Main {

  public static void main(String[] args) throws IOException {

    List userList = new ArrayList<>();

    userList.add(new User("张三", 20, "男性"));

    userList.add(new User("李四", 22, "女性"));

    userList.add(new User("王五", 25, "男性"));

    userList.add(new User("赵六", 27, "女性"));

    userList.add(new User("钱七", 30, "男性"));

    FileOutputStream outputStream = new FileOutputStream("userList.xls");

    ExcelUtils.exportExcel(userList, outputStream);

  }

}

三个

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复