import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Main {
public static void main
(String[] args
) { // Tests
System.
out.
println(convertToTimezone
("03/08/2010 20:19:00 PM",
"Asia/Shanghai",
"US/Central")); System.
out.
println(convertToTimezone
("03/08/2010 20:19:00 PM",
"Asia/Shanghai",
"America/Mexico_City")); }
DateTimeFormatter dtf
= DateTimeFormatter.
ofPattern("MM/dd/uuuu HH:mm:ss a",
Locale.
ENGLISH); LocalDateTime ldt = LocalDateTime.parse(inputDate, dtf);
ZonedDateTime zdtInput = ldt.atZone(ZoneId.of(inputDateTimezone));
ZonedDateTime zdtDestination = zdtInput.withZoneSameInstant(ZoneId.of(destinationDateTimezone));
return zdtDestination.format(dtf);
}
}
aW1wb3J0IGphdmEudGltZS5Mb2NhbERhdGVUaW1lOwppbXBvcnQgamF2YS50aW1lLlpvbmVJZDsKaW1wb3J0IGphdmEudGltZS5ab25lZERhdGVUaW1lOwppbXBvcnQgamF2YS50aW1lLmZvcm1hdC5EYXRlVGltZUZvcm1hdHRlcjsKaW1wb3J0IGphdmEudXRpbC5Mb2NhbGU7CgpwdWJsaWMgY2xhc3MgTWFpbiB7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkJLy8gVGVzdHMKCQlTeXN0ZW0ub3V0LnByaW50bG4oY29udmVydFRvVGltZXpvbmUoIjAzLzA4LzIwMTAgMjA6MTk6MDAgUE0iLCAiQXNpYS9TaGFuZ2hhaSIsICJVUy9DZW50cmFsIikpOwoJCVN5c3RlbS5vdXQucHJpbnRsbihjb252ZXJ0VG9UaW1lem9uZSgiMDMvMDgvMjAxMCAyMDoxOTowMCBQTSIsICJBc2lhL1NoYW5naGFpIiwgIkFtZXJpY2EvTWV4aWNvX0NpdHkiKSk7Cgl9CgoJc3RhdGljIFN0cmluZyBjb252ZXJ0VG9UaW1lem9uZShTdHJpbmcgaW5wdXREYXRlLCBTdHJpbmcgaW5wdXREYXRlVGltZXpvbmUsIFN0cmluZyBkZXN0aW5hdGlvbkRhdGVUaW1lem9uZSkgewoJCURhdGVUaW1lRm9ybWF0dGVyIGR0ZiA9IERhdGVUaW1lRm9ybWF0dGVyLm9mUGF0dGVybigiTU0vZGQvdXV1dSBISDptbTpzcyBhIiwgTG9jYWxlLkVOR0xJU0gpOwoJCUxvY2FsRGF0ZVRpbWUgbGR0ID0gTG9jYWxEYXRlVGltZS5wYXJzZShpbnB1dERhdGUsIGR0Zik7CgkJWm9uZWREYXRlVGltZSB6ZHRJbnB1dCA9IGxkdC5hdFpvbmUoWm9uZUlkLm9mKGlucHV0RGF0ZVRpbWV6b25lKSk7CgkJWm9uZWREYXRlVGltZSB6ZHREZXN0aW5hdGlvbiA9IHpkdElucHV0LndpdGhab25lU2FtZUluc3RhbnQoWm9uZUlkLm9mKGRlc3RpbmF0aW9uRGF0ZVRpbWV6b25lKSk7CgkJcmV0dXJuIHpkdERlc3RpbmF0aW9uLmZvcm1hdChkdGYpOwoJfQp9