gpt4 book ai didi

java - 如何将 JXLS 从版本 1 迁移到版本 2

转载 作者:行者123 更新时间:2023-11-30 08:49:05 25 4
gpt4 key购买 nike

JXLS 2 不向后兼容版本 1。没有升级说明,虽然我可以使用版本 2,但我遇到了两个问题。

  • 版本 1 不需要使用注释标签,但现在没有它们我无法生成输出。

  • Java 代码必须指定写入结果的工作表位置,在版本 1 中,输出被写入模板之上,不需要在 Excel 和 Java 代码中重复模板设置。

    <

如果我找不到解决这两个问题的方法,我将不得不更改每个模板以使用注释。但更糟糕的是,我还必须让我的 Java 代码知道模板工作表布局。我不明白为什么这是默认行为。有没有办法让版本 2 的行为更像版本 1?

最佳答案

Version 1 did not require use of comment tags, but now I cant get the output to generate without them.

这并不完全正确。您可以选择不使用 XlsCommentAreaBuilder .在这种情况下,您有 3 个选择

  1. 使用 XmlAreaBuilder (可能不是你想要的方式)

  2. 使用 Java API 构建命令(可能不是您想要的方式)

  3. 创建您自己的 Jxls1TagCommandAreaBuilder,它将根据 Jxls-1 标记符号构建命令(并将其贡献回 jxls 核心)

选项 3 可能是最好的,因为您将能够在不进行更改的情况下将 Jxls-1 模板与 Jxls-2 一起使用。当然这不是微不足道的,但应该是可能的。

Java code must specify which worksheet location to write the results, in version 1, output was written on top of the template which did not require duplication of template settings in Excel and Java code.

要在此处获得 Jxls-1 行为,您只需执行以下操作即可

        for (Area xlsArea : xlsAreaList) {
xlsArea.applyAt(
new CellRef(xlsArea.getStartCellRef().getCellName()), context);
}

因此,您只需在其起始单元格处应用一个区域即可。

如果您希望这是默认行为,您可以在 jxls issue tracker 中提出改进

关于java - 如何将 JXLS 从版本 1 迁移到版本 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31591735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com