IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

Comparer deux dates de type String


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2007
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 372
    Par défaut Comparer deux dates de type String
    Bonjour, pour comparer deux dates j'ai defini ma méthode validate comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    	public ActionErrors validate(ActionMapping arg0, HttpServletRequest arg1) {
    		ActionErrors errors = new ActionErrors();
     
    			 Calendar now = Calendar.getInstance();               
    			 int mois = now.get(Calendar.MONTH) +  1;         
    			 int jour= now.get(Calendar.DAY_OF_MONTH);         
    			 int annee = now.get(Calendar.YEAR);        
    			 String datesys = jour+"-"+mois+"-"+annee;
     
     
    		if(datedebut.length()==0){
    					errors.add("dated", new ActionError("error.datedebut.vide"));
    		}
     
    		if(datefin.length()==0)
    					errors.add("datef",new ActionError("error.datefin.vide"));	
     
    		if(datedebut.length()!=0 && datefin.length()!=0){
    			Date dd = Date.valueOf(datedebut);
    			Date df = Date.valueOf(datefin);
    			Date ds = Date.valueOf(datesys);
    			if(dd.getTime() < ds.getTime())
    				errors.add("sysdate", new ActionError("error.conge.sys"));
    			else if(dd.getTime() > df.getTime())
    					errors.add("congedate", new ActionError("error.date.invalides"));
    		}
     
    		return errors;
    	}
    Il vérifie tres bien mes champs sauf celui de la date debut qui doit etre superieure a la date d'ajourdh'hui, puisqu'il le trouve toujours inférieur à la date system, comment vous faites si vous avez un champs date de type string et vous voulez le comparer avec la date system sachant que le type de la date que j'utilise c'est : java.date.sql ?

    Merci pour votre aide

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    144
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 144
    Par défaut
    pouur comparer une date, faut tjrs les tranformer en long.
    c'est la reference absolue car prise en compte depuis 1970.
    long time= new Date("date").getTime();

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2007
    Messages
    372
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 372
    Par défaut
    je fais deja ca : Date ds = Date.valueOf(datesys);
    if(dd.getTime() < ds.getTime())

    mes dates sont de type : java.sql.date, mais il convertit la date en long mais il trouve toujours que la date debut > a la date system ? je pense qu'il ne convertit correctement la date "datesys" ?

Discussions similaires

  1. Comment comparer deux dates
    Par vodevil dans le forum Modules
    Réponses: 6
    Dernier message: 01/09/2005, 18h24
  2. comparer deux dates
    Par adel25 dans le forum C++
    Réponses: 3
    Dernier message: 23/08/2005, 20h29
  3. Comparer deux dates
    Par LoicH dans le forum C++Builder
    Réponses: 4
    Dernier message: 04/03/2005, 22h53
  4. comment comparer deux dates?
    Par billoum dans le forum C++Builder
    Réponses: 2
    Dernier message: 21/08/2004, 21h08
  5. Convertir une date en type string
    Par ziboux dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 29/10/2003, 10h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo