当前位置:   article > 正文

Java Excel导出多个工作表(添加多个sheet)_模板导出excel多个sheet java.lang.illegalargumentexceptio

模板导出excel多个sheet java.lang.illegalargumentexception: startrow must be

当数据量比较大的时候,如果超过了65536条的时候,导出的时候就会如下的错误:

jxl.write.biff.RowsExceededException: The maximum number of rows permitted on a worksheet been exceeded

(解释:jxl.write.biff.RowsExceededException:允许在工作表的最大行数已经超过)

所以,我的解决方案是导出多个工作表格。

  1. <span style="font-family:Microsoft YaHei;font-size:12px;">public static void outputExcelData() throws IOException, WriteException {
  2. /**给List存值*/
  3. List result = new ArrayList();
  4. User user = new User();
  5. user.setId("1");
  6. user.setName("yfli");
  7. result.add(user);
  8. User user2 = new User();
  9. user2.setId("1");
  10. user2.setName("zhangjie");
  11. result.add(user2);
  12. User user3 = new User();
  13. user3.setId("1");
  14. user3.setName("lzhang");
  15. result.add(user3);
  16. String fileName = "F:\\sfData.xls";
  17. //首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
  18. WritableWorkbook wwb = Workbook.createWorkbook(new File(fileName));
  19. File dbfFile = new File(fileName);
  20. if (!dbfFile.exists() || dbfFile.isDirectory()) {
  21. dbfFile.createNewFile();
  22. }
  23. int totle = result.size();//获取List集合的size
  24. int mus = 2;//每个工作表格最多存储2条数据(注:excel表格一个工作表可以存储65536条)
  25. int avg = totle / mus;
  26. for (int i = 0; i < avg + 1; i++) {
  27. WritableSheet ws = wwb.createSheet("列表" + (i + 1), i); //创建一个可写入的工作表
  28. //添加表头
  29. ws.addCell(new Label(0, 0, "序号"));
  30. ws.addCell(new Label(1, 0, "姓名"));
  31. int num = i * mus;
  32. int index = 0;
  33. for (int m = num; m < result.size(); m++) {
  34. if (index == mus) {//判断index == mus的时候跳出当前for循环
  35. break;
  36. }
  37. User use = (User) result.get(m);
  38. //将生成的单元格添加到工作表中
  39. //(这里需要注意的是,在Excel中,第一个参数表示列,第二个表示行)
  40. ws.addCell(new Label(0, index + 1, use.getId()));
  41. ws.addCell(new Label(1, index + 1, use.getName()));
  42. index++;
  43. }
  44. }
  45. wwb.write();//从内存中写入文件中
  46. wwb.close();//关闭资源,释放内存
  47. }</span>


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/272931
推荐阅读
相关标签
  

闽ICP备14008679号