概述
/**
*excel行自动合并
*listData 待导出数据
*/
public void test(SXSSFSheet sheet,List<FanManagerExt> listData){
//备份上一条数据
FanManagerExt entityOld = new FanManagerExt();
for(int i=0;i<listData.size();i++){
//当前行数据
FanManagerExt entity= listData.get(i);
//实体字段集合(有序)
Field[] fields = entity.getClass().getDeclaredFields();
Field[] fieldOld = entityOld.getClass().getDeclaredFields();
for(int a=0;a<fields.length;a++){
fields[a].setAccessible(true);
fieldOld[a].setAccessible(true);
//将上下两行同列数据强制转换为字符串进行比较,相同设置单元格合并
try {
if(String.valueOf(fieldOld[a].get(entityOld)).equals(String.valueOf(fields[a].get(entity)))){
CellRangeAddress cra=new CellRangeAddress(i, i+1, a+1, a+1);
//在sheet里设置合并单元格
sheet.addMergedRegion(cra);
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
//对象深拷贝
BeanUtils.copyProperties(entity,entityOld);
}
}
最后
以上就是调皮牛排为你收集整理的poi导出excel,行相同数据自动合并单元格的全部内容,希望文章能够帮你解决poi导出excel,行相同数据自动合并单元格所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复