Convertir la date et l'heure en millisecondes dans Android

{j'ai[6]}Date et Temps de DatePicker et TimePicker. Maintenant, je veux changer la date et l'heure sélectionnées dans millisecondes. Comment puis-je faire cela???

Par Exemple {j'ai[6]}Date sélectionnés 2-5-2012 et Temps est 20:43

Maintenant, je dois convertir cette date en millisecondes quelque chose comme

DateTimeInMilliseconds = 1234567890

27
demandé sur Ahmad Abbasi 2012-11-05 01:39:49

4 réponses

Vous pouvez créer un objet calendrier 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();
48
répondu Sam 2015-05-22 10:33:40

Fusionnez les deux chaînes ensemble et analysez-les en utilisant SimpleDateFormat.

Quelque Chose comme ceci:

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

11
répondu Eric 2012-11-04 21:42:33

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();
6
répondu Dawood Abbasi 2013-12-11 16:28:32

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;

, Vous pouvez faire:

System.out.println(date.getTime());

Et il imprimera l'heure en millisecondes.

4
répondu fonZ 2012-11-04 21:46:01