java 写 Excel(不生成实体文件,写为流的形式)
public String exportReportExcel(String mediaCode, List mediaResourceInfos) {
String scheduleURL = "";
// 1. 根据不同的媒介code查询对应的媒介细节内容
List mediaContents = mediaContentMapper.selectByMediaCode(mediaCode);
// 2. 组装header
List medias = new ArrayList();
for (MediaContent mediaContent : mediaContents) {
medias.add(mediaContent.getAttrName());
}
String[] headers = new String[medias.size()];
headers = medias.toArray(headers);
// 3. 将内容写入对应的Excel
try {
ByteArrayOutputStream os = new ByteArrayOutputStream();
Workbook workbook = new XSSFWorkbook();
// 生成一个表格
Sheet sheet = workbook.createSheet();
sheet.setDefaultColumnWidth(13); // 调整列宽度
writeHeader(headers, workbook, sheet);
writeData(medi