import java.time.OffsetDateTime;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Main {
public static void main
(String[] args
) { OffsetDateTime source = OffsetDateTime.parse("2021-08-21T17:36:51.000+00:00");
OffsetDateTime target = source.withOffsetSameInstant(ZoneOffset.of("+01:00"));
// Custom format
DateTimeFormatter dtf
= DateTimeFormatter.
ofPattern("uuuu-MM-dd hh:mm a O",
Locale.
ENGLISH); String formatted
= dtf.
format(target
); System.
out.
println(formatted
);
// Replace GMT with BST to get the required string
formatted = formatted.replaceFirst("GMT([+\\-]\\d+)", "BST($1)");
System.
out.
println(formatted
); }
}
aW1wb3J0IGphdmEudGltZS5PZmZzZXREYXRlVGltZTsKaW1wb3J0IGphdmEudGltZS5ab25lT2Zmc2V0OwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC5EYXRlVGltZUZvcm1hdHRlcjsKaW1wb3J0IGphdmEudXRpbC5Mb2NhbGU7CgpwdWJsaWMgY2xhc3MgTWFpbiB7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkJT2Zmc2V0RGF0ZVRpbWUgc291cmNlID0gT2Zmc2V0RGF0ZVRpbWUucGFyc2UoIjIwMjEtMDgtMjFUMTc6MzY6NTEuMDAwKzAwOjAwIik7CgkJT2Zmc2V0RGF0ZVRpbWUgdGFyZ2V0ID0gc291cmNlLndpdGhPZmZzZXRTYW1lSW5zdGFudChab25lT2Zmc2V0Lm9mKCIrMDE6MDAiKSk7CgkJU3lzdGVtLm91dC5wcmludGxuKHRhcmdldCk7CgoJCS8vIEN1c3RvbSBmb3JtYXQKCQlEYXRlVGltZUZvcm1hdHRlciBkdGYgPSBEYXRlVGltZUZvcm1hdHRlci5vZlBhdHRlcm4oInV1dXUtTU0tZGQgaGg6bW0gYSBPIiwgTG9jYWxlLkVOR0xJU0gpOwoJCVN0cmluZyBmb3JtYXR0ZWQgPSBkdGYuZm9ybWF0KHRhcmdldCk7CgkJU3lzdGVtLm91dC5wcmludGxuKGZvcm1hdHRlZCk7CgoJCS8vIFJlcGxhY2UgR01UIHdpdGggQlNUIHRvIGdldCB0aGUgcmVxdWlyZWQgc3RyaW5nCgkJZm9ybWF0dGVkID0gZm9ybWF0dGVkLnJlcGxhY2VGaXJzdCgiR01UKFsrXFwtXVxcZCspIiwgIkJTVCgkMSkiKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oZm9ybWF0dGVkKTsKCX0KfQ==