0

我正在使用JExcel (2.6.10),我想复制 sheet 。我想这样创作

  1. 打开现有的 Excel 文件(预先将其创建为模板,无需添加样式和布局)
  2. 更新或插入必填字段
  3. 将其作为 ByteArrayOutPutStream 返回以供下载(用户可以下载该 excel 文件)

我的 Excel 文件可能包含一个或多个具有动态工作表计数的工作表。我不想创建很多模板文件。我想复制模板并在这些复制的模板上插入数据。但是当我复制它时遇到了麻烦。复制的表格格式错误,我的意思是它们的边框样式是错误的。除了它其他都很好。任何建议都会被采纳。这是我的代码..

            WorkbookSettings wsWrite = new WorkbookSettings();
            wsWrite.setEncoding("UTF-8");
            WorkbookSettings wsRead = new WorkbookSettings();
            wsRead.setEncoding("UTF-8");
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            WritableWorkbook workBook = Workbook.createWorkbook(baos,
                    Workbook.getWorkbook(new File(templateDir + "/shipping_template.xls"), wsRead), wsWrite);
            for (int i = list.size() - 1; i > 0; i--) {
                workBook.copySheet("S1", "S" + (i + 1), 2);
            }
            workBook.write();
            baos.close();
            workBook.close();

我也尝试过 WorkBook.Import() 方法,如下所示..

            Workbook readableWorkbook = Workbook.getWorkbook(new File(templateDir + "/shipping_template.xls"),wsRead);
            WritableWorkbook writableWorkbook = Workbook.createWorkbook(baos, readableWorkbook, wsWrite);
            for (int i = vehicleList.size() - 1; i > 0; i--) {
                writableWorkbook.importSheet("S" + (i + 1), 2, readableWorkbook.getSheet(1));
            }

它还获得准确的数据,合并区域但不是正确的边界!我还是麻烦!

4

0 回答 0