Type date en java

AHop Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   -  
Felice_ Messages postés 265 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai une date par exemple 18-05-2017_10:20:00
je veux ajouter à cette date un ecart de temps qui egale à 20 minute
comment je fait et comment je declare l'attribut ecart de temps .

ça pour convertir string to date
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yy hh:mm:ss");

comment je fait pour convertir string to time





A voir également:

4 réponses

Felice_ Messages postés 265 Date d'inscription   Statut Membre Dernière intervention   11
 
L'objet « Date » possède la méthode « getTime » qui permet de convertir ta date en milliseconde.

Tu rajoutes ensuite tes 20 minutes

Puis tu assignes avec la méthode « setTime »
0
AHop Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
comment ? j'ai pas bien compris
0
Felice_ Messages postés 265 Date d'inscription   Statut Membre Dernière intervention   11
 
Comme ceci en fait :
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.text.ParseException;

public class Principal {
    public static void main(String arguments[]) {
        SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy_hh:mm:ss");
        
        try {
            Date     date = sdf.parse("18-05-2017_10:20:00");
            Calendar c    = new GregorianCalendar();
                     c.setTime(date);
                     c.add(Calendar.MINUTE, 20);
            
            System.out.println(date = c.getTime());
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Un exemple avec une manipulation de java.util.Calendar

public static void main(String[] args) {
    String str = "18-05-2017_10:20:00";
    String[] tab = str.split("\\D"); // ["18","05","2017","10","20","00"]

    Calendar cal = Calendar.getInstance(); 
    cal.set(Integer.parseInt(tab[2]), // year
            Integer.parseInt(tab[1]), // month
            Integer.parseInt(tab[0]), // day
            Integer.parseInt(tab[3]), // hour
            Integer.parseInt(tab[4]), // minute
            Integer.parseInt(tab[5])); // second

    System.out.println(cal.getTime()); // Sun Jun 18 10:20:00 CEST 2017
    cal.add(Calendar.MINUTE, 20);
    System.out.println(cal.getTime()); // Sun Jun 18 10:40:00 CEST 2017
}

La confiance n'exclut pas le contrôle
0
AHop Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
moi au lieu de 20 je veux ajouter un attribut de mon fichier qui est de type String j'ai utilisé le convert

int att6 = Integer.parseInt(lineFile.getAttribute6());



mais s'à marche pas


The method add(int, int) in the type Calendar is not applicable for the arguments (int, String)
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
à quoi ça sert de faire
int att6 = Integer.parseInt(lineFile.getAttribute6());
si tu ne te sers pas de att6 qui est justement de type int comme il faut !?
0
AHop Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
l'att 6 si la valeur que je veux ajouter au lieu de 20 et il est de type String
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020 > AHop Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
"il est de type String"
int att6
c'est ton code !
0
Felice_ Messages postés 265 Date d'inscription   Statut Membre Dernière intervention   11 > AHop Messages postés 22 Date d'inscription   Statut Membre Dernière intervention  
 
Dans ce cas, pourquoi tu ne le fais pas ?

int att6 = Integer.parseInt(lineFile.getAttribute6());

c.add(Calendar.MINUTE, att6);
0