Я использую Joda Time. Я хочу сравнить 2 даты/раз A и B, чтобы определить, превысил ли B A.Android Joda Time - Как загрузить UTC из файла
Проблема - Когда я лог-код А это не в UTC. Когда я регистрирую B, это в UTC. Поэтому сравнение не является реальным.
A - A UTC time loaded from a file
B -The "System Time" in UTC
Код:
A - DateTime csvTime = new DateTime(inArray[5]) ; //inArray[x] is loaded from a file and has this format: 2017-02-10T01:09:00Z
B - new DateTime(DateTimeZone.UTC)
Вопрос - Как загрузить inArray [5], так что действительно в UTC и сравнивает с B точно?
Заранее спасибо, и да, я просмотрел 100 сообщений об этом. Мне еще нужно найти сообщение, которое говорит мне синтаксис для A выше, как сохранить внешнюю дату формата ISO 8601 во внутреннем UTC. Я поиграл с TimeZone, установленным по умолчанию, чтобы заставить Joda/JVMP по умолчанию TZ, но это заставляет меня указывать TimeZone, который я не хочу делать.
спасибо. Это (dt) прекрасно работало. Я ценю это. Последний вопрос ... теперь, как мне отобразить dt в локальном времени/часовом поясе, установленном моим андроидом? –
@FrankZappa Как насчет использования 'withZone (DateTimeZone.getDefault())'? Это будет работать до тех пор, пока пользователь не настроит часы или системную зону на своем устройстве. –
спасибо. Я попробую это. У вас есть опыт сериализации/десериализации объектов с включенным полем даты Joda? Я использую gson для сериализации. Моя сериализация работала до тех пор, пока я не изменил дату java на DateTime Joda, а затем десериализацию разбили. Поэтому я добавил GoogleTimeTypeConverter Google для сериализации/десериализации. Он больше не падает при сериализации, но при десериализации кажется, что время изменилось. Есть предположения? –