Я пишу файл, в котором даты должны быть в десятичном формате:
2007-04-24T13:18:09
становится 39196.554270833331000
У кого-нибудь есть средство форматирования времени, которое будет это делать (десятичное время - это то, что использует VB / Office и т. Д.)?
Основной код выглядит следующим образом:
final DateTime date = new DateTime(2007, 04, 24, 13, 18, 9, 0, DateTimeZone.UTC);
double decimalTime = (double) date.plusYears(70).plusDays(1).getMillis() / (Days.ONE.toStandardDuration().getMillis())); //=39196.554270833331000.
Для примера выше.
(я начал с DateTimePrinter, который бы делал это, но сейчас это слишком сложно (у меня нет связанного источника joda, поэтому я не могу легко получить идеи)).
Примечание. Десятичное время - это количество дней с 1900 года. представляет неполные дни. 2.6666666 будет 4 вечера 2 января 1900