У меня есть два объекта Date, и мне нужно получить разницу во времени, чтобы определить общие часы между ними. Они случаются с того же дня. В результате я бы хотел, чтобы часы и минуты.Найдите общее количество часов между двумя датами
Когда я использую .ToString() на дату моего объекта я получаю это: Пт 18 декабря 8:08:10 CST 2009
Я попытался следующие:
long diff=(this.endDate.getTime()-this.startDate.getTime())/(60*60 * 1000);
Но это только дает мне часы, а не минуты. Я знаю, что это простая проблема, но я не могу понять это.
Редакции: Окончательное решение для заинтересованных. Спасибо Michael Brewer-Davis
Period p = new Period(this.startDate, this.endDate);
long hours = p.getHours();
long minutes = p.getMinutes();
String format = String.format("%%0%dd", 2);
return Long.toString(hours)+":"+String.format(format, minutes);
Обновите свой ответ @ clang1234. Это очень вводит в заблуждение и может легко вводить ошибки. Этот код работает только в том случае, если 'startDate' и' endDate' находятся в тот же день. вам нужно сделать что-то вроде 'Hours.hoursBetween (startTime, endTime) .getHours()', как указано в комментариях. – Arjit