Мне трудно разобрать / отформатировать строку даты, полученную от веб-службы. Я пробовал несколько подходов, но безуспешно.
Строка даты выборки:
2011-10-05T03:00:00Z
Исключение:
W/System.err(10072): java.text.ParseException: Unparseable date: "2011-10-05T05:00:00Z" (at offset 10)
W/System.err(10072): at java.text.DateFormat.parse(DateFormat.java:626)
Пример кода:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:SSSS");
Date date = formatter.parse(info.AiringTime);
Я обнаружил, что если я уберу букву «Т» между датой и временем и заменим ее пробелом, она будет отлично отформатирована. У кого-нибудь есть предложения?
- ОБНОВЛЕНИЕ -
После более глубокого изучения документации по API я нашел следующее:
Все значения DateTime ответа представлены в формате UTC. Вам необходимо применить смещение UTC для расчета местного времени для отображения.
DateTime - это значение даты и времени, указанное в одном из следующих форматов:
Формат UTC: ГГГГ-ММ-ДДЧч: мм: ссЗ. Например: 2011-03-15T02: 00: 00Z.
Местное время со смещением: ГГГГ-ММ-ДДЧч: мм: сс + или - чч: мм (положительное или отрицательное смещение). Например, для тихоокеанского времени США: 2011-03-14T06: 00: 00 -08: 00.
Есть предложения по подходу в формате UTC?