2012-12-12 45 views
1

我已经采取了用户输入的时间和日期:差异,分

DatePicker dp = (DatePicker) findViewById(R.id.datePicker); 
TimePicker tp = (TimePicker) findViewById(R.id.timePicker); 

int year = dp.getYear(); 
int month = dp.getMonth(); 
int date = dp.getDayOfMonth(); 
int hour = tp.getCurrentHour(); 
int min = tp.getCurrentMinute(); 

和系统的当前日期和时间为:

Calendar cal = Calendar.getInstance(); 

int Syear = cal.get(Calendar.YEAR); 
int Smonth = cal.get(Calendar.MONTH); 
int Sdate = cal.get(Calendar.DAY_OF_MONTH); 
int Shour = cal.get(Calendar.HOUR_OF_DAY); 
int Smin = cal.get(Calendar.MINUTE); 

认为,用户不会将来自系统的当前日期和时间在过去的日期和时间。现在我需要用户输入和系统当前日期之间的差异,分钟或秒或毫秒的时间。我怎样才能做到这一点?任何示例,教程或任何内容都将有所帮助。谢谢。

回答

2

要获得以毫秒为单位的不同,你可以做这样的事情:

 Calendar a = Calendar.getInstance(); 
    Calendar now = Calendar.getInstance(); 
    a.set(year, month, day, hour, min); 
    long difference = a.getTimeInMillis()-now.getTimeInMillis(); 
+0

谢谢。 @Yellos – Shoshi