2013-08-19 6 views
7

Zur Zeit habe ich meinen Code alsHSSF POI: Wie kann man wissen, ob Daten in der Zelle vom Typ Date sind?

bean.setREPO_DATE(row.getCell(16).getDateCellValue()); 

es funktioniert gut, wenn Zelle als Datum in Excel formatiert ist.

Allerdings konvertiert es auch einige Ganzzahl oder lange wie 1234 oder 5699 bis heute. Ich kenne den Grund dafür auch.

Ich möchte jedoch eine Überprüfung vor dem Ausführen der obigen Zeile anwenden. So etwas wie dieses

if(row.getCell(16).isOfDateFormat){ 
bean.setREPO_DATE(row.getCell(16).getDateCellValue()); 
} 

Bitte Leite mich ..

Vielen Dank im Voraus!

+0

möglich Duplikat [XSSF POI Zelle Datum] (http://stackoverflow.com/questions/6677326/xssf-poi-is-cell- date) – Jayan

+0

Entschuldigung dafür habe ich tatsächlich gesucht, bevor Sie die Frage –

+0

@ Abhishek Singh: es war nicht genau ein Duplikat (obwohl Sie könnten die API in dieser Antwort. Ich entfernte meine enge Abstimmung) – Jayan

Antwort

13

Try this,

Verwendung import org.apache.poi.ss.usermodel.DateUtil;

if(DateUtil.isCellDateFormatted(cell)) 
    { 
     cell.getDateCellValue(); 
    } 
+0

Vielen Dank seine Arbeit für mich. Können Sie mir bitte sagen, wie man überprüft, ob der Wert in der Zelle in Prozent oder normale Zahl ist? – user3217843

Verwandte Themen