Я программно экспортирую пользователей из ldap. Поэтому я получаю пользователей из ldap. Один из атрибутов — whenCreated
.
Одно из значений, которые мне нужно преобразовать, это: 20090813145607.0Z
Непосредственно разбив его, я получаю следующий формат: ггггММддЧЧммсс
+ .0Z
. Проблема в том, что приложение работает в часовом поясе CET, а сохраненное время — UTC, что, вероятно, указывается .0Z
. Это 14:56 UTC
, а местное представление — 16:56
. Для летнего времени это, кажется, 2 часа, а для зимнего времени 1 час.
Я проверил SimpleDateFormat, и там есть заполнитель для часового пояса, однако это другой формат.
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
sdf.parse("20090813145607.0Z");
Будет отображаться неправильная дата, так как игнорируется часовой пояс даты.
Есть ли способ преобразовать его напрямую?