Android 查找两个utc时间之间的差异
我正在尝试创建一个函数,它以2013-11-05T16:44:54.128515的形式接收utc时间,并获取当前utc时间并进行比较。如果小于24小时,则返回小时差;如果大于24小时,则返回天差Android 查找两个utc时间之间的差异,android,time,utc,Android,Time,Utc,我正在尝试创建一个函数,它以2013-11-05T16:44:54.128515的形式接收utc时间,并获取当前utc时间并进行比较。如果小于24小时,则返回小时差;如果大于24小时,则返回天差 public String time_parser(String time) { Date d1 = null; Date d2 = null; // DateFormat df = DateFormat.getTimeInstance()
public String time_parser(String time)
{
Date d1 = null;
Date d2 = null;
// DateFormat df = DateFormat.getTimeInstance();
//df.setTimeZone(TimeZone.getTimeZone("utc"));
//String gmtTime = df.format(new Date());
// Log.d("response ok", "TIME TIME TIME " + gmtTime);
String timesince="";
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
final String utcTime = sdf.format(new Date());
try{
d1=sdf.parse(time);
d2= sdf.parse(utcTime);
long diff = d2.getTime()-d1.getTime();
long diffSeconds = diff / 1000 % 60;
long diffMinutes = diff / (60 * 1000) % 60;
long diffHours = diff / (60 * 60 * 1000) % 24;
long diffDays = diff / (24 * 60 * 60 * 1000);
if(diffDays >1)
{
timesince = Long.toString(diffDays );
Log.d("response ok", "TIME= " + timesince);
}
else
{
timesince = Long.toString(diffHours);
Log.d("response ok", "TIME 2= " + timesince);
}
}
catch (Exception e) {
e.printStackTrace();
}
return timesince;
}
有什么问题吗?日期变量看起来是空的