找回密码
 立即注册

QQ登录

只需一步,快速开始

lynn8588

金牌服务用户

40

主题

161

帖子

413

积分

金牌服务用户

积分
413
lynn8588
金牌服务用户   /  发表于:2024-4-29 16:03  /   查看:2612  /  回复:2
本帖最后由 Richard.Huang 于 2024-5-29 12:28 编辑

产品:GcExcel
版本:V7.0.5
调研编号:DOCXLS-10284
LastReview:2024/05/29
该问题已经在V7.1.2中得到修复,可以通过升级版本来解决该问题

Hi team,
  1. private byte[] getWorkbookByte(Workbook wb) {
  2.     try {
  3.         //Workbook wb = newWorkbook();
  4.         //wb.getActiveSheet().getRange("A1");
  5.         ByteArrayOutputStream os = newByteArrayOutputStream();
  6.         XlsxSaveOptions options = new XlsxSaveOptions();
  7.         options.setExcludeEmptyRegionCells(true);
  8.         options.setExcludeUnusedStyles(true);
  9.         options.setExcludeUnusedNames(true);
  10.         wb.save(os, options);

  11.         //wb.save(os,SaveFileFormat.Xlsx);
  12.         byte[] bytes = os.toByteArray();
  13.         logger.info("to byte done");
  14.         return bytes;
  15.     } catch (Exception ex) {
  16.         logger.error("getWorkbookByte failed", ex);
  17.         throw ex;
  18.     }
  19. }
复制代码

麻烦看一下下面这个代码报错问题,以及在保证不丢失数据的情况下,怎么优化,谢谢!使用wb.save(os,SaveFileFormat.Xlsx)不会报错附件里有报错文件。

SOpenBefore (1).xlsx

1.25 MB, 下载次数: 1341

2 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-4-29 16:07:14
沙发
问题可以复现,目前初步调查是setExcludeUnusedStyles这个选项导致的,

具体的错误原因,还需要在调查一下。有新的进展会在帖子中更新

跟踪编号
DOCXLS-10284

回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-5-29 12:25:48
板凳
最新调研进展:本贴中提及的问题已经在GcExcelV7.1.2中得到优化,新版本已经发布,您可以通过升级GcExcel的版本来解决该问题,本贴就先结帖了,后续有其他相关问题,欢迎发新帖询问
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部