用户输入时间和系统输入时间不一样

获取用户输入时间和日期:

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);

假如用户与系统当前时间不同,怎么样得到这个时间差?日期、小时、分、秒或者毫秒。谢谢

两个calendar当然可以做diff了,只要获得calendar.gettimeinmillis,然后互相减,就可以得到毫秒数,剩下的自己转换。

根据楼上的,获得毫秒之差:

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