C# Excel导出超出65536行报错

一:报错
Invalidrownumber(65536)outsideallowablerange(0..65535)
原因:excel03的限制就是65536行,超过行数就报错
二:解决方案-创立多个sheet
publicStringexport(Listlist,Stringf){
Stringname=””;
HSSFWorkbookbook=newHSSFWorkbook();
HSSFSheetsheet=book.createSheet(“stud”);
//声明一行
HSSFRowrow=sheet.createRow(0);
row=sheet.createRow(0);
row.createCell(0).setCellValue(“身份”);
row.createCell(1).setCellValue(“信誉”);
intindex=0;//记录额外创立的sheet数量
for(inti=0;i<list.size();i++){
if((i+1)%65535==0){
sheet=book.createSheet(“stud”+index);
row=sheet.createRow(0);
row.createCell(0).setCellValue(“身份”);
row.createCell(1).setCellValue(“信誉”);
index++;
}
row=sheet.createRow((i+1)-(index*65535));
//第四步,创立单元格,并设置值
row.createCell((short)0).setCellValue(list.get(i).getStr(“info”));
row.createCell((short)1).setCellValue(list.get(i).getStr(“score”));
}
//第六步,将文件存到指定位置
StringfileName=””;
try{
fileName=f+”/download/导出.xls”;
name=”导出.xls”;
Filefile=newFile(fileName);
if(file.exists()){
file.delete();
}
FileOutputStreamfout=newFileOutputStream(fileName);
book.write(fout);
fout.close();
}catch(Exceptione){
e.printStackTrace();
}
returnname;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值