Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
765 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Parser un string (Date)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Parser un string (Date)

n°936913
Mazda3
Posté le 04-01-2005 à 16:56:38  profilanswer
 

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 ?

mood
Publicité
Posté le 04-01-2005 à 16:56:38  profilanswer
 

n°936925
zedar
Posté le 04-01-2005 à 17:03:11  profilanswer
 

Tu ne peux pas différencier tes cas avant d'arriver au "parsage" ?
et pourquoi ne pas vouloir utiliser les exceptions ?

n°936927
phnatomass
Je m'empare de ton esprit !!
Posté le 04-01-2005 à 17:03:22  profilanswer
 

Faire des tests avec des expressions régulières ?
\d{2}/\d{2}/\d{4} et \d{2}-\d{2}-\d{4}


Message édité par phnatomass le 04-01-2005 à 17:03:48
n°936940
Mazda3
Posté le 04-01-2005 à 17:11:15  profilanswer
 

Zedar a écrit :

Tu ne peux pas différencier tes cas avant d'arriver au "parsage" ?
et pourquoi ne pas vouloir utiliser les exceptions ?


 
Bonne idée ... Quoique pas assez propre  :o, mais je vais tenter  :lol:  
 
Sinon je veux pas utiliser les exceptions car j'aime trop manipuler les exceptions, c'est sale  :o  :D
 
Une bonne appli, c'est une appli sans exception  :o


Message édité par Mazda3 le 04-01-2005 à 17:11:57
n°936942
Mazda3
Posté le 04-01-2005 à 17:12:38  profilanswer
 

phnatomass a écrit :

Faire des tests avec des expressions régulières ?
\d{2}/\d{2}/\d{4} et \d{2}-\d{2}-\d{4}


 
Même esprit que zedar, je teste  :jap:  

n°936944
lorill
Posté le 04-01-2005 à 17:13:44  profilanswer
 

c'est quoi ton problème avec les exceptions ?

n°936949
zedar
Posté le 04-01-2005 à 17:14:42  profilanswer
 

Euh ton point de vue sur les exceptions est.. intéressant [:petrus75]
 
sinon pour différencier avant, tu fais juste une recherche du caractère '/', '-' ou '.' et tu auras ton format :p (j'ai regardé dans la doc et pas trouvé moyen d'avoir un format multiple en argument...)

n°936950
sircam
I Like Trains
Posté le 04-01-2005 à 17:15:11  profilanswer
 

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é.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°936954
sircam
I Like Trains
Posté le 04-01-2005 à 17:16:06  profilanswer
 

mazda3 a écrit :

Même esprit que zedar, je teste  :jap:


Ca ne suffira pas. Le plus simple et le plus efficace pour tester une date, c'est pas ça.  :sol:


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°936958
the real m​oins moins
Posté le 04-01-2005 à 17:16:36  profilanswer
 

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...


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
mood
Publicité
Posté le 04-01-2005 à 17:16:36  profilanswer
 

n°936960
Mazda3
Posté le 04-01-2005 à 17:16:53  profilanswer
 

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 :jap:

n°936962
sircam
I Like Trains
Posté le 04-01-2005 à 17:17:46  profilanswer
 

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.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°936964
Mazda3
Posté le 04-01-2005 à 17:18:11  profilanswer
 

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

n°936965
zedar
Posté le 04-01-2005 à 17:18:28  profilanswer
 

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 [:kiki]


Message édité par zedar le 04-01-2005 à 17:19:26
n°936969
the real m​oins moins
Posté le 04-01-2005 à 17:19:30  profilanswer
 

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é


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°937075
pyrate
Mieux vaut tard que jamais!!!
Posté le 04-01-2005 à 18:15:18  profilanswer
 

mazda3 a écrit :

Bonne idée ... Quoique pas assez propre  :o, mais je vais tenter  :lol:  
 
Sinon je veux pas utiliser les exceptions car j'aime trop manipuler les exceptions, c'est sale  :o  :D
 
Une bonne appli, c'est une appli sans exception  :o


 
t'es compliqué
mais je voudrais savoir ce que tu veut dire avec


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Parser un string (Date)

 

Sujets relatifs
date[RESOLU]problème de récupération de date
showMessageDialog(...,String s,...) et mise en formeInclure current_date dans un script sql...
Problème Image + DateConvertir une une string base 2 en string base 16
Passer de char array a stringSELECT MIN(date) marche pas !!!!
Comparer contenu cellule excell et stringoperation sur string
Plus de sujets relatifs à : Parser un string (Date)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR