Existe-t-il un moyen de convertir une chaîne Date
donnée en Milliseconds
(Epoch
format long) en java? Exemple: je veux convertir
public static final String date = "04/28/2016";
en millisecondes (époque).
Date.getTime () Renvoie le nombre de millisecondes depuis le 1er janvier 1970, 00:00:00 GMT représenté par cet objet Date.
Vous pouvez simplement l'analyser dans Java.util.Date à l'aide de Java.text.SimpleDateFormat et appeler la fonction getTime (). Il renverra le nombre de millisecondes depuis le 01 janvier 1970.
public static final String strDate = "04/28/2016";
try {
Long millis = new SimpleDateFormat("MM/dd/yyyy").parse(strDate).getTime();
} catch (ParseException e) {
e.printStackTrace();
}
Vous pouvez créer un objet Calendar
puis définir sa date à la date souhaitée, puis appeler sa méthode getTimeInMillis()
.
Calendar c = new Calendar.getInstance();
c.set(2016, 3, 28);
c.getTimeInMillis();
Si vous voulez convertir la String
directement en date, vous pouvez essayer ceci:
String date = "4/28/2016";
String[] dateSplit = date.split("/");
c.set(Integer.valueOf(dateSplit[2]), Integer.valueOf(dateSplit[0]) - 1, Integer.valueOf(dateSplit[1]));
c.getTimeInMillis();
Vous devrez utiliser l'instance de calendrier pour obtenir des millisecondes à partir d'Epoch
try {
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
Java.util.Date d = sdf.parse("04/28/2016");
/*
* Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object.
*/
System.out.println(d.getTime());
//OR
Calendar cal = Calendar.getInstance();
cal.set(2016, 3, 28);
//the current time as UTC milliseconds from the Epoch.
System.out.println(cal.getTimeInMillis());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}