近日项目中提出需求,需要导出Excel,最开始以为很简单,也没说明需要合并相同内容的行,于是偷个懒,使用原来写好的工具类直接导出。写好后以为okay了,结果,竟然又提供了另一个版本的模板,需要合并内容相同的列,麻烦来了,于是网上各种搜寻,最后找到一个例子,效果是我想要的,感谢大神的贡献,附上链接如下:
https://blog.csdn.net/qq_33142257/article/details/64929145
于是取下来先看看效果,然后再这基础上自己改进了一下做出了自己想要的效果,如下:

记录一下,以后备用
首先在maven工程的pom.xml文件中添加
org.apache.poi
poi
3.14
package com.test.testexcel;
public class PoiModel {
private String content;
private String oldContent;
private int rowIndex;
private int cellIndex;
public String getOldContent() {
return oldContent;
}
public void setOldContent(String oldContent) {
this.oldContent = oldContent;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public int getRowIndex() {
return rowIndex;
}
public void setRowIndex(int rowIndex) {
this.rowIndex = rowIndex;
}
public int getCellIndex() {
return cellIndex;
}
public void setCellIndex(int cellIndex) {
this.cellIndex = cellIndex;
}
}
package com.test.testexcel;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import com.inforstack.excel.util.PoiModel;
public class Test {
/**
* @param headers 标题集合 tilte的长度应该与list中的model的属性个数一致
* @param dataset 内容集合
* @param mergeColumns 合并单元格的列
*/
public static String createExcel(String[] headers, List
最后,再次感谢提供思路的大神