POI导出一份数据,在导出前workbook内容都是完整的,workbook.write后前端也顺利下载到.xlsx文件,但是文件内容只有一个单元格单词undefined,也没有报错之类的,相关截图
document.body.appendChild 放后一点试试
free spire.xls.jar(免费版)的导出方法:
import com.spire.xls.*;
import java.awt.*;
public class CreateExcel {
public static void main(String[] args){
//创建Workbook实例
Workbook workbook = new Workbook();
//获取第一张工作表(新建的Workbook默认包含3张工作表)
Worksheet sheet = workbook.getWorksheets().get(0);
//为第一张工作表设置名称
sheet.setName("Data Sheet");
//创建列头单元格样式
CellStyle style1 = workbook.getStyles().addStyle("Header Style");
style1.getFont().setSize(12f);
style1.getFont().setColor(Color.BLACK);
style1.getFont().isBold(true);
style1.setHorizontalAlignment(HorizontalAlignType.Center);
style1.setVerticalAlignment(VerticalAlignType.Center);
//创建数据单元格样式
CellStyle style2 = workbook.getStyles().addStyle("Data Style");
style2.getFont().setSize(10f);
style2.getFont().setColor(Color.BLACK);
//为列头单元格添加数据并应用样式
for (int column=1; column<5; column++)
{
CellRange header =sheet.getCellRange(1,column);
header.setValue("Column " + column );
header.setStyle(style1);
header.setColumnWidth(15f);
}
//为数据单元格添加数据并应用样式
for (int row=2; row<11; row++)
{
for (int column=1; column<5; column++)
{
CellRange cell = sheet.getCellRange(row, column);
cell.setValue("Data " + row + ", " + column);
cell.setStyle(style2);
}
}
//保存结果文件
workbook.saveToFile("CreateExcel.xlsx", FileFormat.Version2013);
}
}