hutool ExcelUtil筛选相同的列
时间: 2023-10-03 11:11:31 浏览: 99
很高兴能为您解答问题!关于hutool ExcelUtil筛选相同的列,您可以使用ExcelUtil#filterDuplicateRow(List<List<Object>> rows, int... columnIndex)方法进行筛选,其中rows为原始数据,columnIndex为需要筛选的列。该方法会返回一个List<List<Object>>类型的结果,其中包含了筛选出来的重复行数据。希望能对您有所帮助!
相关问题
hutool ExcelUtil导出导入复杂表头excel
Hutool的ExcelUtil提供了非常方便的导入导出Excel的方法,可以处理复杂表头的情况。具体步骤如下:
1. 导入ExcelUtil类和相关依赖:
```java
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
```
2. 创建一个ExcelWriter对象,并指定输出路径:
```java
ExcelWriter writer = ExcelUtil.getWriter("D:/test.xlsx");
```
3. 定义表头信息,使用链式语法设置表头:
```java
writer.merge(0, 0, 0, 3, "学生信息表");
writer.merge(1, 1, 0, 1, "基本信息");
writer.merge(1, 1, 2, 3, "联系方式");
writer.writeRow(Arrays.asList("姓名", "年龄", "电话", "邮箱"));
```
4. 写入数据:
```java
List<Student> list = new ArrayList<>();
list.add(new Student("张三", 18, "12345678901", "zhangsan@qq.com"));
list.add(new Student("李四", 20, "23456789012", "lisi@qq.com"));
writer.write(list, true);
```
5. 关闭ExcelWriter对象:
```java
writer.close();
```
完整代码示例:
```java
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test {
public static void main(String[] args) {
ExcelWriter writer = ExcelUtil.getWriter("D:/test.xlsx");
writer.merge(0, 0, 0, 3, "学生信息表");
writer.merge(1, 1, 0, 1, "基本信息");
writer.merge(1, 1, 2, 3, "联系方式");
writer.writeRow(Arrays.asList("姓名", "年龄", "电话", "邮箱"));
List<Student> list = new ArrayList<>();
list.add(new Student("张三", 18, "12345678901", "zhangsan@qq.com"));
list.add(new Student("李四", 20, "23456789012", "lisi@qq.com"));
writer.write(list, true);
writer.close();
}
}
class Student {
private String name;
private int age;
private String phone;
private String email;
public Student(String name, int age, String phone, String email) {
this.name = name;
this.age = age;
this.phone = phone;
this.email = email;
}
// getter、setter方法省略
}
```
以上代码中,我们通过ExcelWriter对象的merge方法来设置表头的合并单元格,使用writeRow方法写入表头数据,使用write方法写入实际数据,最后关闭ExcelWriter对象即可。
注意:代码中的Student类是自定义的,可以根据实际情况修改。
hutool excelutil获取导入的总行数
您可以使用Hutool的ExcelUtil工具类中的getRowCount方法来获取导入的总行数,示例如下:
```java
ExcelReader reader = ExcelUtil.getReader(file);
int rowCount = reader.getRowCount();
```
其中,file是您要导入的Excel文件。请注意确保导入的文件格式正确,否则可能会导致获取行数失败。
阅读全文