Eu não acho que tivemos essa aula de volta quando você fez a pergunta, mas hoje existe uma resposta fácil.
O que você deseja fazer é usar a classe DataFormatter . Você passa essa célula para uma célula e é melhor retornar uma string contendo o que o Excel mostraria para essa célula. Se você passar uma célula de string, você receberá a string de volta. Se você passar uma célula numérica com as regras de formatação aplicadas, ele formatará o número com base nelas e retornará a string.
Para o seu caso, eu suponho que as células numéricas tenham uma regra de formatação inteira aplicada a elas. Se você solicitar ao DataFormatter para formatar essas células, ele retornará uma sequência com a sequência inteira.
Além disso, observe que muitas pessoas sugerem fazer isso cell.setCellType(Cell.CELL_TYPE_STRING)
, mas os JavaDocs do Apache POI afirmam claramente que você não deve fazer isso ! Fazer a setCellType
chamada perderá a formatação, pois os javadocs explicam que a única maneira de converter para uma String com a formatação restante é usar a classe DataFormatter .