Я попытался добавить дату в таблицу Google. Чтобы добавить дату, мы конвертировали дату в эпоху.Java Epoch Date для Google SpreadSheet
Для Spreadsheet эпохи
Google Sheets использует форму даты эпохи, которая обычно используется в электронных таблицах. Целая часть значения (слева от десятичной) учитывает дни с 30 декабря 1899 года. Дробная часть (справа от десятичной) считает время как долю одного дня. Например, 1 января 1900 года в полдень было 2,5, 2, потому что через два дня после 30 декабря 1899 года и 0,5, поскольку полдень составляет полдня. 1 февраля 1900 года в 15:00 будет 33,625.
Мы используем API времени Joda для расчета. (Наша версия JDK 1.7).
Для всего номера мы используем ниже код.
public static double getEpochDate(Date inputDate)
{
MutableDateTime epoch = new MutableDateTime();
epoch.setTime(0, 0, 0, 0);
epoch.setDate(1899,12,30); //Set to Epoch time
System.out.println(epoch);
DateTime now = new DateTime(inputDate);
Days days = Days.daysBetween(epoch, now);
return Double.valueOf(days.getDays());
}
Мы сталкиваемся проблемой найти фракционную часть номера эпохи
Спасибо за очень быстрый ответ. Все вычисления работают отлично, если мы просто удалим минус пение от -2209161600000L. Дата будет рассчитана с 1899 года DEC 30, так что мы только что добавили с Unix Epoch. –
@GauravAshara: Или вычтите константу вместо ее добавления ... в любом случае, это будет работать, конечно. Я изменил ответ соответственно. –
: Да, конечно. благодаря –