У меня есть эта начальная дата и время: 20201023T200457Z (кажется, UTC0000), как я могу преобразовать/сгенерировать ее с помощью этого шаблона yyyyMMdd HH:mm:ss по местному времени на мобильном телефоне?
Я получаю этот результат: Пт, 23 октября, 20:04:57 по Гринвичу + 02:00 2020 с этим кодом:
SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'", Locale.getDefault());
Date startGMTInput = df.parse(start);
Log.e(TAG, "start: " + startGMTInput.toString());// -> Fri Oct 23 20:04:57 GMT+02:00 2020
Но моя цель - получить: 2020-10-23 22:04:57 //потому что я нахожусь в часовом поясе GMT+2
SimpleDateFormat
для анализа дат форматирования и, поэтому просто создайте еще один с нужным вам шаблоном. - person Thomas   schedule 23.10.2020SimpleDateFormat
и их друзей. Посмотрите, можете ли вы использовать дешугаринг или добавить ThreeTenABP в свой проект Android, чтобы использовать java.time, современный API даты и времени Java. С ним намного приятнее работать. - person Ole V.V.   schedule 23.10.2020