Convertir la date et l'heure en millisecondes en Android
J'ai Date et Time de DatePicker
et TimePicker
. Maintenant, je veux changer la date et l'heure sélectionnées en millisecondes. Comment puis-je faire ceci???
Par exemple, j'ai Date sélectionné 2-5-2012
et Heure est 20:43
Maintenant, je dois convertir cette date-heure en millisecondes quelque chose comme
DateTimeInMilliseconds = 1234567890
Vous pouvez créer un objet Calendar avec les valeurs de votre DatePicker et TimePicker:
Calendar calendar = Calendar.getInstance();
calendar.set(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(),
timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0);
long startTime = calendar.getTimeInMillis();
Fusionnez les deux chaînes ensemble et analysez-les à l'aide de SimpleDateFormat
.
Quelque chose comme ça:
String toParse = myDate + " " + myTime; // Results in "2-5-2012 20:43"
SimpleDateFormat formatter = new SimpleDateFormat("d-M-yyyy hh:mm"); // I assume d-M, you may refer to M-d for month-day instead.
Date date = formatter.parse(toParse); // You will need try/catch around this
long millis = date.getTime();
Exemple sur IDEOne: http://ideone.com/nOJYQ4
Vous pouvez utiliser ce code
String string_date = "12-December-2012";
SimpleDateFormat f = new SimpleDateFormat("dd-MMM-yyyy");
Date d = f.parse(string_date);
long milliseconds = d.getTime();
La méthode getTime()
de la classe Date
renvoie un long
avec le temps en millisecondes.
http://developer.Android.com/reference/Java/util/Date.html
Donc, si vous avez un objet Date quelque part comme:
Date date;
Tu peux faire:
System.out.println(date.getTime());
Et il affichera l'heure en millisecondes.