programacion - Convertir fecha y hora en milisegundos en Android
mostrar fecha y hora actual android studio (4)
Tengo fecha y hora de DatePicker
y TimePicker
. Ahora quiero cambiar la fecha y la hora seleccionadas en milisegundos . ¿¿¿Cómo puedo hacer esto???
Por ejemplo, he seleccionado la fecha 2-5-2012
y el tiempo es 20:43
Ahora tengo que convertir esta fecha y hora en milisegundos algo así como
DateTimeInMilliseconds = 1234567890
Combine las dos cadenas juntas y SimpleDateFormat
utilizando SimpleDateFormat
.
Algo como esto:
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();
Muestra en IDEOne: http://ideone.com/nOJYQ4
El método getTime()
de la clase Date
devuelve long
con el tiempo en milisegundos.
http://developer.android.com/reference/java/util/Date.html
Así que si tienes un objeto Date en algún lugar como:
Date date;
Tu puedes hacer:
System.out.println(date.getTime());
Y se imprimirá el tiempo en milisegundos.
Puede crear un objeto de calendario con los valores de su DatePicker y TimePicker:
Calendar calendar = Calendar.getInstance();
calendar.set(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(),
timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0);
long startTime = calendar.getTimeInMillis();
Puedes usar este código
String string_date = "12-December-2012";
SimpleDateFormat f = new SimpleDateFormat("dd-MMM-yyyy");
Date d = f.parse(string_date);
long milliseconds = d.getTime();