Java 使用jxls删除柱

Java 使用jxls删除柱,java,excel,jxl,jxls,Java,Excel,Jxl,Jxls,我正在使用JXLS填充模板excel电子表格。 我有一个配置文件,其中定义了导出中应包含的列。 我在这个主页上找到了 使用jx:if标记的可能性,但如果我这样使用它(与“”) 结果是 A | B | C | D | E d | e |

我正在使用JXLS填充模板excel电子表格。 我有一个配置文件,其中定义了导出中应包含的列。 我在这个主页上找到了 使用
jx:if
标记的可能性,但如果我这样使用它(与“”)

结果是

               A                               |     B                | C     | D | E 
               d                               |     e                |       |   |
                                               |     b                |       |   |
但是我想

               A                      |     B                | C     | D | E 
               d                      |     e                |       |   |
                                      |                      |       |   |
我可以对列中的每个单元格使用if标记,然后它就可以工作了。但是我还想使用if标记来删除行(像这样),然后它就不起作用了,因为我在列中有一个end if标记

我还找到了方法
xlsTransformer.setColumnPropertyNamesToHide(..)
,但它只隐藏列,不删除它们


我非常感谢您的帮助。

选择您的示例,您可以这样做:

                A                               |     B                | C     | D | E 
1 jx:if test="${line something...}"             |                      |       |   |  
2 jx:if test="${columnheader.b != DISABLED}"    | ${columnheader.b}    | jx:if | d | e
3 jx:if                                         |                      |       |   |  
4 jx:if test="${columnheader.b != DISABLED}"    |     b                | jx:if |   | 
也就是说,为所有列放置if标记,对于要检查的行,在前后两行放置if标记

请注意:

  • 当您为一行放置If标记时,放置jx:If标记的行将始终消失(如果条件为真或假,则独立)。在该示例中,单元A1、B1、C1、D1、E1和A3、B3、C3、D3、E3将始终消失

  • 为列放置If标记时,放置jx:If标记的单元格将始终消失。在该示例中,单元格A2、C2和A4、C4将始终消失

                A                               |     B                | C     | D | E 
1 jx:if test="${line something...}"             |                      |       |   |  
2 jx:if test="${columnheader.b != DISABLED}"    | ${columnheader.b}    | jx:if | d | e
3 jx:if                                         |                      |       |   |  
4 jx:if test="${columnheader.b != DISABLED}"    |     b                | jx:if |   |