[Fix] java.time.zone.ZoneRulesException: Unknown time-zone ID


Java Unknown time-zone ID Error
Exception in thread "main"
        java.time.zone.ZoneRulesException: Unknown time-zone ID: America/NewYork
	at java.base/java.time.zone.ZoneRulesProvider.getProvider(ZoneRulesProvider.java:279)
	at java.base/java.time.zone.ZoneRulesProvider.getRules(ZoneRulesProvider.java:234)
	at java.base/java.time.ZoneRegion.ofId(ZoneRegion.java:120)
	at java.base/java.time.ZoneId.of(ZoneId.java:408)
	at java.base/java.time.ZoneId.of(ZoneId.java:356)
	at org.code2care.Java8AddDaysToDate.main(Java8AddDaysToDate.java:18)

If you get ZoneRulesException runtime exception with message Unknown time-zone ID, that's because you have passed the unknown or incorrect city/country timezone string.

Instant now = Instant.now();
ZonedDateTime zdt = ZonedDateTime.ofInstant(now, ZoneId.of("America/NewYork"));
System.out.println(zdt);

Fix:

In the above example, the NewYork string should be New_York

Instant now = Instant.now();
ZonedDateTime zdt = ZonedDateTime.ofInstant(now, ZoneId.of("America/New_York"));
System.out.println(zdt);

List of Time-Zone ID Strings: https://code2care.org/pages/java-timezone-list-utc-gmt-offset

Copyright © Code2care 2024 | Privacy Policy | About Us | Contact Us | Sitemap