fork download
  1. import java.time.OffsetDateTime;
  2. import java.time.ZoneOffset;
  3. import java.time.format.DateTimeFormatter;
  4. import java.util.Locale;
  5.  
  6. public class Main {
  7. public static void main(String[] args) {
  8. OffsetDateTime source = OffsetDateTime.parse("2021-08-21T17:36:51.000+00:00");
  9. OffsetDateTime target = source.withOffsetSameInstant(ZoneOffset.of("+01:00"));
  10. System.out.println(target);
  11.  
  12. // Custom format
  13. DateTimeFormatter dtf = DateTimeFormatter.ofPattern("uuuu-MM-dd hh:mm a O", Locale.ENGLISH);
  14. String formatted = dtf.format(target);
  15. System.out.println(formatted);
  16.  
  17. // Replace GMT with BST to get the required string
  18. formatted = formatted.replaceFirst("GMT([+\\-]\\d+)", "BST($1)");
  19. System.out.println(formatted);
  20. }
  21. }
Success #stdin #stdout 0.11s 50264KB
stdin
Standard input is empty
stdout
2021-08-21T18:36:51+01:00
2021-08-21 06:36 PM GMT+1
2021-08-21 06:36 PM BST(+1)