यह वस्तुतः यहां कई अन्य प्रश्नों के समान है, जैसे स्ट्रिंग के बजाय दशमलव लौटाना (पीओआई जार)
इसका उत्तर जैसा ही है। जो मैंने यहां दिया था :
POI आपको सटीक मान दे रहा है जो Excel ने फ़ाइल में संग्रहीत किया है। आम तौर पर, यदि आप किसी एक्सेल सेल में एक नंबर लिखते हैं, तो एक्सेल उसे फॉर्मेटिंग के साथ एक नंबर के रूप में स्टोर करेगा। यदि आप चाहते हैं तो POI आपके लिए उस स्वरूपण को करने के लिए सहायता प्रदान करता है (ज्यादातर लोग नहीं करते - वे संख्याओं को संख्याओं के रूप में चाहते हैं ताकि वे उनका उपयोग कर सकें)
आप जिस वर्ग की तलाश कर रहे हैं वह है DataFormatter ए> . आपका कोड कुछ इस तरह होगा
DataFormatter fmt = new DataFormatter();
for (Row r : sheet) {
for (Cell c : r) {
CellReference cr = new CellRefence(c);
System.out.println("Cell " + cr.formatAsString() + " is " +
fmt.formatCellValue(c) );
}
}