21xrx.com
2025-03-26 07:47:06 Wednesday
文章检索 我的文章 写文章
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);
  }
}

三个

  
  

评论区