Je dois valider le format d'une chaîne de date provenant d'un fichier csv. J'utilise l'analyseur csvReader (au.com.bytecode.opencsv.CSVReader). Ci-dessous le code que j'utilise pour obtenir les données du lecteur csv et le changer en un format de date.Validation du format de la date dans un contrôleur groovy
def String strToDate = csvrow[monatVal]
myDate = new Date().parse("dd.MM.yy HH:mm",strToDate)
Le problème est que dans le fichier CSV, il existe une entrée de date par exemple. '41 .01.10 12:22 ', j'ai ce qui suit quand j'imprime' myDate '
myDate = '10.02.10 12:22'
-> Son ajoutant 10 jours au mois de février.
Je voudrais une vérification de validation pour le format de date. Y at-il un moyen de vérifier la dateString lors de l'analyse?
Merci à l'avance, Sudheer
Parse, il est probablement préférable comme une méthode statique, à savoir Date.parse (format, entrée), qui retourne une nouvelle instance de date - droit?
Merci Don. Réglage de la clarté à false. Mais au lieu de donner un bon format, je donne quelque chose comme dateParser.parse ('41 .01.10 12:22:34 ') c'est ne pas reconnaître que le modèle de secondes n'est pas le modèle défini comme SimpleDateFormat. Comment puis-je vérifier cela? J'ai déjà essayé applypattern. Changement de dose beaucoup cependant. – sudheer
Je ne suis pas sûr si SimpleDateFormat supporte cela. Peut-être que vous pourriez juste vérifier si la longueur de la chaîne de motif et la longueur de la chaîne de date sont les mêmes avant d'essayer d'analyser la chaîne de date –