obtenir la Date à partir d'une Feuille Excel à l'aide de POI
- Je obtenir la date à partir d'une feuille excel à l'aide de PI en utilisant le code ci-dessous,
if (DateUtil.isCellDateFormatted(currentCell))
{
Date date = currentCell.getDateCellValue();
cellValue = date.getDate() + "/" + (date.getMonth() + 1) + "/" + (1900 + date.getYear());
}
Par défaut de la date format de feuille de calcul excel est MM/jj/aa. Mais si je fais le mois de la valeur est supérieure à 12 (j'.e >= 13), le format est changé à jj/MM/aa.
Par le code ci-dessus,Si je donne la date de 10/11/2010, il donne mois comme 10 et la date et 11. Si je vous le donne comme 15/10/2010, j'ai eu le mois comme 10 et la date et 15.
Mais j'ai besoin de maintenir un format jj/MM/aaaa. Comment puis-je y parvenir?
Vous devez vous connecter pour publier un commentaire.
Utilisation SimpleDateFormat pour le format de la date, parce que "currentCell.getDateCellValue()) renvoie une Date.
Ce qui devrait éviter la conversion automatique qui se met en place.
Vous pourriez peut-être essayer d'utiliser org.apache.pi.ss.usermodel.DataFormatter - en supposant que vous devez créer votre fichier Excel jusqu'à format de la cellule de la date sous la forme jj/mm/aaaa, puis il doit être capable de rendre pour vous de la cellule.
Alternativement, si votre cellule est mise en forme comme une date, mais dans un format différent, alors vous avez deux choix. Est de changer le style de cellule pour avoir un jj/mm/aaaa, puis demander DataFormatter pour le format, l'autre est d'obtenir le java.util.Objet Date de DateUtil et puis le formater avec un SimpleDateFormat format comme d'autres l'ont suggéré.
S'assurer que le champ dans Excel lui-même est configuré comme un type de données de DATE dans Excel. Le format Excel doit être pertinent pour comment POI lit.