Parser un string (Date) - Java - Programmation
Marsh Posté le 04-01-2005 à 17:03:11
Tu ne peux pas différencier tes cas avant d'arriver au "parsage" ?
et pourquoi ne pas vouloir utiliser les exceptions ?
Marsh Posté le 04-01-2005 à 17:03:22
Faire des tests avec des expressions régulières ?
\d{2}/\d{2}/\d{4} et \d{2}-\d{2}-\d{4}
Marsh Posté le 04-01-2005 à 17:11:15
Zedar a écrit : Tu ne peux pas différencier tes cas avant d'arriver au "parsage" ? |
Bonne idée ... Quoique pas assez propre , mais je vais tenter
Sinon je veux pas utiliser les exceptions car j'aime trop manipuler les exceptions, c'est sale
Une bonne appli, c'est une appli sans exception
Marsh Posté le 04-01-2005 à 17:12:38
phnatomass a écrit : Faire des tests avec des expressions régulières ? |
Même esprit que zedar, je teste
Marsh Posté le 04-01-2005 à 17:14:42
Euh ton point de vue sur les exceptions est.. intéressant
sinon pour différencier avant, tu fais juste une recherche du caractère '/', '-' ou '.' et tu auras ton format (j'ai regardé dans la doc et pas trouvé moyen d'avoir un format multiple en argument...)
Marsh Posté le 04-01-2005 à 17:15:11
Plus fondamentalement, tu ne devrais probablement pas arriver à un point où une String à convertir en java.sql.Date peut avoir plusieurs formats.
Je ne serais pas étonné qu'il y ait un problème de design en amont, et c'est part là que je commencerais.
A défaut, on en arrive à des contorsions inélégantes et qui rendent le code peu maintenable.
Maintenant, je ne vois pas pq tu ne veux pas utiliser les exceptions ?! Tu crées une méthode générique isValid(String date, String format) dans une classe relative aux Dates qui réalise le test; tu en crées une autre qui fait la conversion et le tour est joué.
Marsh Posté le 04-01-2005 à 17:16:06
mazda3 a écrit : Même esprit que zedar, je teste |
Ca ne suffira pas. Le plus simple et le plus efficace pour tester une date, c'est pas ça.
Marsh Posté le 04-01-2005 à 17:16:36
sircam: bah euh "le problème de design" ici c'est simplement une certaine souplesse qu'on veut laisser aux utilisateurs j'imagine; le truc qu'il doit parser est probablement une entrée humaine...
Marsh Posté le 04-01-2005 à 17:16:53
Ok, mais la date fournit, c'est une date donnée pas un calendrier Javascript, et sur certains postes, il me donne de droles de format.
Sinon merci
Marsh Posté le 04-01-2005 à 17:17:46
L'entrée devrait être normalisée avant d'arriver à ce qui ressemble à une couche data access, plutôt que de mélanger les deux.
Marsh Posté le 04-01-2005 à 17:18:11
the real moins moins a écrit : sircam: bah euh "le problème de design" ici c'est simplement une certaine souplesse qu'on veut laisser aux utilisateurs j'imagine; le truc qu'il doit parser est probablement une entrée humaine... |
Egalement, l'utilisateur n'est aps obligé d'utiliser le calendrier javascript
Marsh Posté le 04-01-2005 à 17:18:28
Ouep, d'accord avec Sircam, surtout si l'entrée n'est pas humaine, essaie de regarder en aval comment tu peux arriver à ces cas là, ça semble qd mm bizarre (aval c'est bien avant ?)
EDIT : manqué c'était amont
Marsh Posté le 04-01-2005 à 17:19:30
sircam a écrit : L'entrée devrait être normalisée avant d'arriver à ce qui ressemble à une couche data access, plutôt que de mélanger les deux. |
ha oui, c'est le package qui te fait dire ça, javais pas tilté
Marsh Posté le 04-01-2005 à 18:15:18
mazda3 a écrit : Bonne idée ... Quoique pas assez propre , mais je vais tenter |
t'es compliqué
mais je voudrais savoir ce que tu veut dire avec
Marsh Posté le 04-01-2005 à 16:56:38
Bonjour
j'ai une date en string qui me faut convertir en java.sql.Date.
Donc j'utilise un parser pour la convertir. (SimpleDateFormat)
Le pb c'est que la date peut avoir plusieurs format different :
dd/MM/yyyy ou dd.MM-yyyy ou dd.MM.yyyy
Comment résoudre ce pb sans utiliser les exceptions ?