Как изменить 2018-12-24 12:00:00 +0800
на 2018-12-23 16:00:00 +0000
в Java?
private String currentDateandTime = new Date();
final DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);
final DateFormat fullFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss XX", Locale.CHINA);
//dateFormat.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
//fullFormat.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
Date dateTest = dateFormat.parse(currentDateandTime);
currentDateandTime = fullFormat.format(dateTest);
currentDateanTime Результат
2018-12-24 12:00:00 +0800
2018-12-24 12:00:00 +0800
и2018-12-23 16:00:00 +0000
это не одно и то же мгновение !!! - person xingbin   schedule 24.12.2018SimpleDateFormat
. Это не только давно устарело, но и доставит много хлопот. Сегодня у нас намного лучшеjava.time
, современный API даты и времени Java. - person Ole V.V.   schedule 27.12.2018