在Android中将date和时间转换为毫秒

我有DatePickerTimePicker date时间 。 现在我想将选定的date和时间更改为毫秒 。 我怎样才能做到这一点???

例如,我select了date 2-5-2012时间 20:43

现在我必须把这个date时间转换成毫秒

DateTimeInMilliseconds = 1234567890

Solutions Collecting From Web of "在Android中将date和时间转换为毫秒"

您可以使用DatePicker和TimePicker中的值创build一个Calendar对象:

 Calendar calendar = Calendar.getInstance(); calendar.set(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(), timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0); long startTime = calendar.getTimeInMillis(); 

合并两个string,并使用SimpleDateFormatparsing它们。

像这样的东西:

 String toParse = myDate + " " + myTime; // Results in "2-5-2012 20:43" SimpleDateFormat formatter = new SimpleDateFormat("dM-yyyy hh:mm"); // I assume dM, you may refer to Md for month-day instead. Date date = formatter.parse(toParse); // You will need try/catch around this long millis = date.getTime(); 

在IDEOne上的示例: http ://ideone.com/nOJYQ4

你可以使用这个代码

 String string_date = "12-December-2012"; SimpleDateFormat f = new SimpleDateFormat("dd-MMM-yyyy"); Date d = f.parse(string_date); long milliseconds = d.getTime(); 

Date类的getTime()方法以毫秒为单位返回一个long

http://developer.android.com/reference/java/util/Date.html

所以如果你有一个Date对象的地方像:

 Date date; 

你可以做:

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

它将以毫秒为单位打印出时间。