Question

J'utilise un classeur HSSF comme modèle pour un autre. En raison de la façon dont cela fonctionne, comme vous le savez probablement si vous lisez ceci, je ne peux pas simplement prendre une cellule du classeur 1 et mettre son style sur le style de cellule. style.

Cependant, il y a un maximum de 4000 styles dans une feuille de calcul, donc j'essaie d'éviter de cloner un nombre illimité de styles. Donc, je vérifie si un style que je suis sur le point de clone est égal à tout style qui existe déjà dans mon classeur. Si c'est le cas, j'utilise simplement le style qui existe déjà. Si ce n'est pas le cas, je clone le style du manuel du modèle.

J'utilise la méthode égale définie ci-dessous, qui ne semble pas se soucier de l'office du style.

http://www.java2s.com/open-source/java-document/collaboration/poi-3.6/org/apache/poi/hssf/usermodel/hssfcellstyle.java.htm#equalsobject

Cependant, à la fin de tout cela, je vérifie:

        if ( !getCellStyle().equals(cell.getCellStyle()) ) {
            System.out.println("Not equal to cloned style!");
        } else {
            System.out.println("Equal to cloned style.");
        }

... La sortie indique que les styles ne sont pas égaux.

Pourquoi est-ce?

Remarque: vérifié que les deux objets sont de type HSSFCellStyle en utilisant l'instance.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top