Soruyu sorduğunuzda bu dersi geri aldığımızı sanmıyorum, ama bugün kolay bir cevap var.
Yapmak istediğiniz şey DataFormatter sınıfını kullanmaktır . Bunu bir hücreye iletirsiniz ve o, size Excel'in o hücre için göstereceği şeyi içeren bir dize döndürmek için elinden geleni yapar. Bir dizeli hücre geçirirseniz, dizeyi geri alırsınız. Biçimlendirme kurallarının uygulandığı sayısal bir hücreye iletirseniz, sayıyı bunlara göre biçimlendirir ve dizeyi size geri verir.
Sizin durumunuz için, sayısal hücrelerin kendilerine uygulanan bir tamsayı biçimlendirme kuralına sahip olduğunu varsayarım. DataFormatter'dan bu hücreleri biçimlendirmesini isterseniz, size içinde tamsayı dizesi olan bir dize verir.
Ayrıca, birçok insanın yapmayı önerdiğini unutmayın cell.setCellType(Cell.CELL_TYPE_STRING)
, ancak Apache POI JavaDoc'ları bunu yapmamanız gerektiğini açıkça belirtir ! Javadocs , kalan biçimlendirme ile bir String'e dönüştürmenin tek yolunun DataFormatter sınıfını kullanmak olduğunu açıkladığından , setCellType
çağrıyı yapmak biçimlendirmeyi gevşetecektir .