可能重复:
How to convert Milliseconds to “X mins, x seconds” in Java?
Calculating the Difference Between Two Java Date Instances
我有这样的功能:
public String setDateAndTime(int h, int m, int s,int amPm) {
TimeZone nst = TimeZone.getTimeZone("GMT+5:45");
Calendar calendar1 = new GregorianCalendar(nst);
Date currentTime1 = new Date();
calendar1.setTime(currentTime1);
calendar1.set(Calendar.HOUR, h);
calendar1.set(Calendar.MINUTE, m);
calendar1.set(Calendar.SECOND, s);
calendar1.set(Calendar.YEAR, calendar1.get(Calendar.YEAR));
calendar1.set(Calendar.MONTH, calendar1.get(Calendar.MONTH));
calendar1.set(Calendar.DAY_OF_MONTH, calendar1.get(Calendar.DAY_OF_MONTH));
calendar1.set(Calendar.AM_PM, amPm);
DateFormat formatter = new SimpleDateFormat("hh:mm:ss a");
String date = formatter.format(calendar1.getTime());
return date;
}
通过这个功能,我创建了两个日期(String)
String s1=setDateAndTime(12,00,00,1);//12:00:00 PM
String s2=setDateAndTime(3,15,45,0);//3:15:45 AM
现在如何找到找到s1和s2之间的差异,我还需要小时,分钟和第二左,这样我才能进行进一步的处理。
答案 0 :(得分:3)
通过调用getTime()
,您可以在几毫秒内获得时间。然后比较long
个值。
milliis/1000
给出秒数,millis/60/1000
给出分钟,millis/3600/1000
给出小时等等。
你也可以使用像JodaTime这样的第三方库,但如果你需要这个一次性的Joda太多了。